3425 lines
69 KiB
CSS
3425 lines
69 KiB
CSS
@import '@dukang/shared-ui/base.css';
|
|
|
|
html, body, #root {
|
|
overflow-x: hidden;
|
|
width: 100%;
|
|
max-width: 100%;
|
|
}
|
|
|
|
html {
|
|
scrollbar-gutter: stable;
|
|
}
|
|
|
|
/* ── Partner auth ── */
|
|
.partner-auth-page {
|
|
min-height: 100vh;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding: 48px var(--space-page) var(--space-page);
|
|
background-color: var(--color-background);
|
|
background-image: url("https://www.transparenttextures.com/patterns/natural-paper.png");
|
|
}
|
|
|
|
.partner-auth-page--quick {
|
|
background-image:
|
|
radial-gradient(at 100% 0%, rgba(166, 29, 36, 0.03) 0, transparent 50%),
|
|
radial-gradient(at 0% 100%, rgba(255, 191, 0, 0.03) 0, transparent 50%);
|
|
}
|
|
|
|
.partner-auth-brand {
|
|
text-align: center;
|
|
margin-bottom: var(--space-lg);
|
|
}
|
|
|
|
.partner-auth-logo-circle {
|
|
width: 80px;
|
|
height: 80px;
|
|
margin: 0 auto 16px;
|
|
border-radius: 50%;
|
|
background: var(--color-heritage-red);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.05);
|
|
}
|
|
|
|
.partner-auth-logo-circle .material-symbols-outlined {
|
|
color: #fff;
|
|
font-size: 36px;
|
|
font-variation-settings: 'FILL' 1;
|
|
}
|
|
|
|
.partner-auth-title {
|
|
font-family: var(--font-headline);
|
|
font-size: 32px;
|
|
font-weight: 700;
|
|
color: var(--color-heritage-red);
|
|
letter-spacing: -0.02em;
|
|
}
|
|
|
|
.partner-auth-subtitle {
|
|
font-family: var(--font-headline);
|
|
font-size: 18px;
|
|
color: var(--color-subtle-gray);
|
|
margin-top: 4px;
|
|
}
|
|
|
|
.partner-auth-card {
|
|
width: 100%;
|
|
max-width: 400px;
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
padding: var(--space-lg);
|
|
box-shadow: var(--shadow-card);
|
|
border: 1px solid var(--color-surface-container-highest);
|
|
}
|
|
|
|
.partner-auth-card-title {
|
|
font-family: var(--font-headline);
|
|
font-size: 20px;
|
|
font-weight: 600;
|
|
text-align: center;
|
|
margin-bottom: var(--space-lg);
|
|
color: var(--color-ink-black);
|
|
}
|
|
|
|
.partner-input-wrap {
|
|
position: relative;
|
|
display: flex;
|
|
align-items: center;
|
|
background: var(--color-background);
|
|
border: 1px solid transparent;
|
|
border-radius: var(--radius-md);
|
|
transition: box-shadow 0.2s;
|
|
}
|
|
|
|
.partner-input-wrap:focus-within {
|
|
box-shadow: 0 0 0 2px rgba(166, 29, 36, 0.2);
|
|
}
|
|
|
|
.partner-input-icon {
|
|
position: absolute;
|
|
left: 16px;
|
|
color: var(--color-subtle-gray);
|
|
font-size: 20px;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.partner-input {
|
|
width: 100%;
|
|
padding: 16px 16px 16px 44px;
|
|
border: none;
|
|
background: transparent;
|
|
font-size: 14px;
|
|
color: var(--color-on-surface);
|
|
}
|
|
|
|
.partner-input:focus { outline: none; }
|
|
|
|
.partner-input-row {
|
|
display: flex;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-input-row .partner-input-wrap { flex: 1; }
|
|
|
|
.partner-code-btn {
|
|
flex-shrink: 0;
|
|
padding: 16px;
|
|
border: 1px solid rgba(226, 190, 188, 0.2);
|
|
border-radius: var(--radius-md);
|
|
background: var(--color-surface-container-low);
|
|
color: var(--color-heritage-red);
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
cursor: pointer;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.partner-code-btn:disabled {
|
|
opacity: 0.5;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.partner-auth-divider {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
margin: var(--space-md) 0;
|
|
}
|
|
|
|
.partner-auth-divider::before,
|
|
.partner-auth-divider::after {
|
|
content: '';
|
|
flex: 1;
|
|
height: 1px;
|
|
background: rgba(226, 190, 188, 0.2);
|
|
}
|
|
|
|
.partner-auth-divider span {
|
|
font-size: 12px;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-checkbox-row {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
margin-top: var(--space-md);
|
|
font-size: 12px;
|
|
color: var(--color-on-surface-variant);
|
|
}
|
|
|
|
.partner-checkbox-row input { margin-top: 0; accent-color: var(--color-heritage-red); }
|
|
|
|
.partner-auth-footer {
|
|
margin-top: var(--space-lg);
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
gap: 8px;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-auth-footer .material-symbols-outlined { font-size: 16px; }
|
|
|
|
.partner-glass-card {
|
|
width: 100%;
|
|
max-width: 384px;
|
|
background: rgba(255, 255, 255, 0.8);
|
|
backdrop-filter: blur(10px);
|
|
border: 1px solid rgba(255, 255, 255, 0.3);
|
|
border-radius: var(--radius-md);
|
|
padding: var(--space-md);
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.05);
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
gap: var(--space-md);
|
|
position: relative;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.partner-quick-badge {
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
background: rgba(255, 191, 0, 0.1);
|
|
color: var(--color-aged-amber);
|
|
font-size: 10px;
|
|
font-weight: 700;
|
|
padding: 4px 12px;
|
|
border-bottom-left-radius: var(--radius-md);
|
|
letter-spacing: 0.05em;
|
|
}
|
|
|
|
.partner-quick-avatar {
|
|
width: 80px;
|
|
height: 80px;
|
|
border-radius: 50%;
|
|
background: var(--color-surface-container-low);
|
|
border: 4px solid #fff;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
margin-top: 8px;
|
|
}
|
|
|
|
.partner-quick-avatar .material-symbols-outlined {
|
|
font-size: 40px;
|
|
color: var(--color-subtle-gray);
|
|
font-variation-settings: 'FILL' 1;
|
|
}
|
|
|
|
.partner-btn-primary {
|
|
width: 100%;
|
|
padding: 16px;
|
|
border: none;
|
|
border-radius: var(--radius-md);
|
|
background: var(--color-heritage-red);
|
|
color: var(--color-on-primary);
|
|
font-family: var(--font-headline);
|
|
font-size: 18px;
|
|
font-weight: 600;
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 8px;
|
|
box-shadow: 0 4px 12px rgba(166, 29, 36, 0.2);
|
|
transition: transform 0.1s, opacity 0.2s;
|
|
}
|
|
|
|
.partner-btn-primary:active { transform: scale(0.98); }
|
|
|
|
.partner-btn-ghost {
|
|
width: 100%;
|
|
padding: 12px;
|
|
border: 1px solid transparent;
|
|
border-radius: var(--radius-md);
|
|
background: transparent;
|
|
color: var(--color-on-surface-variant);
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
cursor: pointer;
|
|
text-align: center;
|
|
}
|
|
|
|
.partner-btn-outline {
|
|
flex: 1;
|
|
height: 48px;
|
|
border: 1px solid var(--color-outline);
|
|
border-radius: var(--radius-md);
|
|
background: transparent;
|
|
color: var(--color-on-surface);
|
|
font-family: var(--font-headline);
|
|
font-size: 16px;
|
|
font-weight: 600;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-btn-wechat {
|
|
width: 100%;
|
|
padding: 16px;
|
|
border: 1px solid rgba(226, 190, 188, 0.2);
|
|
border-radius: var(--radius-md);
|
|
background: var(--color-surface-container-low);
|
|
color: var(--color-on-surface);
|
|
font-family: var(--font-headline);
|
|
font-size: 18px;
|
|
font-weight: 600;
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 8px;
|
|
transition: background 0.2s, transform 0.1s;
|
|
}
|
|
|
|
.partner-btn-wechat:hover {
|
|
background: var(--color-surface-container-high);
|
|
}
|
|
|
|
.partner-btn-wechat:active {
|
|
transform: scale(0.98);
|
|
}
|
|
|
|
.partner-btn-wechat:disabled {
|
|
opacity: 0.6;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.partner-btn-wechat svg {
|
|
width: 24px;
|
|
height: 24px;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-remember-row {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
padding: 0 4px;
|
|
font-size: 12px;
|
|
color: var(--color-on-surface-variant);
|
|
}
|
|
|
|
.partner-remember-row input {
|
|
width: 16px;
|
|
height: 16px;
|
|
accent-color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-link {
|
|
display: block;
|
|
text-align: center;
|
|
margin-top: 16px;
|
|
color: var(--color-heritage-red);
|
|
font-size: 14px;
|
|
}
|
|
|
|
/* ── Home dashboard ── */
|
|
.partner-home {
|
|
padding-bottom: 96px;
|
|
overflow-x: hidden;
|
|
max-width: 100%;
|
|
}
|
|
|
|
.partner-home-body {
|
|
padding: var(--space-md) var(--space-page) var(--space-lg);
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--space-lg);
|
|
max-width: 100%;
|
|
overflow-x: hidden;
|
|
}
|
|
|
|
.partner-home-header {
|
|
position: sticky;
|
|
top: 0;
|
|
z-index: 50;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding: 0 var(--space-page);
|
|
height: 56px;
|
|
background: var(--color-surface-container-low);
|
|
box-shadow: var(--shadow-card);
|
|
}
|
|
|
|
.partner-home-header-actions {
|
|
position: absolute;
|
|
right: var(--space-page);
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 16px;
|
|
}
|
|
|
|
.partner-notif-btn {
|
|
position: relative;
|
|
padding: 8px;
|
|
border: none;
|
|
background: none;
|
|
border-radius: 50%;
|
|
cursor: pointer;
|
|
color: var(--color-on-surface-variant);
|
|
}
|
|
|
|
.partner-notif-dot {
|
|
position: absolute;
|
|
top: 6px;
|
|
right: 6px;
|
|
width: 8px;
|
|
height: 8px;
|
|
background: var(--color-heritage-red);
|
|
border-radius: 50%;
|
|
border: 2px solid var(--color-surface);
|
|
}
|
|
|
|
.partner-revenue-card {
|
|
position: relative;
|
|
overflow: hidden;
|
|
background: linear-gradient(135deg, #a61d24 0%, #820012 100%);
|
|
border-radius: var(--radius-md);
|
|
padding: 24px;
|
|
color: #fff;
|
|
box-shadow: 0 8px 24px rgba(166, 29, 36, 0.25);
|
|
}
|
|
|
|
.partner-revenue-card::before {
|
|
content: '';
|
|
position: absolute;
|
|
right: -48px;
|
|
top: -48px;
|
|
width: 192px;
|
|
height: 192px;
|
|
background: rgba(255, 255, 255, 0.05);
|
|
border-radius: 50%;
|
|
filter: blur(24px);
|
|
}
|
|
|
|
.partner-revenue-label {
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
opacity: 0.8;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
}
|
|
|
|
.partner-revenue-amount {
|
|
font-family: var(--font-headline);
|
|
font-size: clamp(28px, 8vw, 36px);
|
|
font-weight: 700;
|
|
margin-top: 8px;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.partner-revenue-grid {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
gap: 16px;
|
|
margin-top: 24px;
|
|
padding-top: 24px;
|
|
border-top: 1px solid rgba(255, 255, 255, 0.1);
|
|
}
|
|
|
|
.partner-bento {
|
|
display: grid;
|
|
grid-template-columns: 1fr;
|
|
gap: var(--space-gutter);
|
|
min-width: 0;
|
|
}
|
|
|
|
/* Stitch: 移动端单列堆叠,仅平板及以上并排 */
|
|
@media (min-width: 768px) {
|
|
.partner-bento { grid-template-columns: 7fr 5fr; }
|
|
}
|
|
|
|
.partner-bento-card {
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
padding: var(--space-md);
|
|
box-shadow: var(--shadow-card);
|
|
min-width: 0;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.partner-bento-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: var(--space-md);
|
|
}
|
|
|
|
.partner-store-stats {
|
|
display: flex;
|
|
gap: 12px;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-store-stat {
|
|
flex: 1;
|
|
min-width: 0;
|
|
background: var(--color-surface-container-low);
|
|
border-radius: 8px;
|
|
padding: 12px;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-dot {
|
|
width: 12px;
|
|
height: 12px;
|
|
border-radius: 50%;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-dot--green {
|
|
background: var(--color-success-green);
|
|
box-shadow: 0 0 8px rgba(45, 106, 79, 0.4);
|
|
}
|
|
|
|
.partner-dot--red {
|
|
background: var(--color-heritage-red);
|
|
box-shadow: 0 0 8px rgba(166, 29, 36, 0.4);
|
|
}
|
|
|
|
.partner-quick-actions {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 8px;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-quick-action {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
gap: 8px;
|
|
min-width: 0;
|
|
width: 100%;
|
|
border: none;
|
|
background: none;
|
|
cursor: pointer;
|
|
text-decoration: none;
|
|
color: inherit;
|
|
}
|
|
|
|
.partner-quick-action-icon {
|
|
width: 48px;
|
|
height: 48px;
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
position: relative;
|
|
}
|
|
|
|
.partner-quick-action-icon--red { background: #fef2f2; color: var(--color-heritage-red); }
|
|
.partner-quick-action-icon--amber { background: #fffbeb; color: var(--color-aged-amber); }
|
|
.partner-quick-action-icon--green { background: #ecfdf5; color: var(--color-success-green); }
|
|
.partner-quick-action-icon--blue { background: #eff6ff; color: var(--color-status-blue); }
|
|
|
|
.partner-quick-action-label {
|
|
font-size: 10px;
|
|
font-weight: 500;
|
|
color: var(--color-on-surface-variant);
|
|
width: 100%;
|
|
text-align: center;
|
|
line-height: 1.2;
|
|
word-break: keep-all;
|
|
}
|
|
|
|
.partner-quick-badge-count {
|
|
position: absolute;
|
|
top: -4px;
|
|
right: -4px;
|
|
width: 20px;
|
|
height: 20px;
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
font-size: 10px;
|
|
font-weight: 700;
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
border: 2px solid #fff;
|
|
}
|
|
|
|
.partner-order-summary-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
gap: 8px;
|
|
margin-bottom: var(--space-md);
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-order-summary-header h2 {
|
|
flex-shrink: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-order-summary-header a {
|
|
flex-shrink: 0;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.partner-order-stats {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 8px;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-order-stat {
|
|
background: var(--color-card);
|
|
padding: 12px;
|
|
border-radius: var(--radius-md);
|
|
box-shadow: var(--shadow-card);
|
|
border-left: 4px solid var(--color-aged-amber);
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-order-stat--blue { border-left-color: var(--color-status-blue); }
|
|
.partner-order-stat--green { border-left-color: var(--color-success-green); }
|
|
|
|
.partner-expansion-card {
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
padding: var(--space-md);
|
|
box-shadow: var(--shadow-card);
|
|
}
|
|
|
|
.partner-expansion-split {
|
|
display: flex;
|
|
}
|
|
|
|
.partner-expansion-split > div {
|
|
flex: 1;
|
|
}
|
|
|
|
.partner-expansion-split > div + div {
|
|
padding-left: 16px;
|
|
border-left: 1px solid rgba(226, 190, 188, 0.2);
|
|
}
|
|
|
|
.partner-expansion-value-row {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-expansion-trend {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 2px;
|
|
font-size: 12px;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.partner-expansion-trend--up {
|
|
color: #16a34a;
|
|
}
|
|
|
|
.partner-expansion-trend--down {
|
|
color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-form-error {
|
|
margin: 0 20px 12px;
|
|
padding: 10px 12px;
|
|
border-radius: 8px;
|
|
background: var(--color-error-container);
|
|
color: var(--color-error);
|
|
font-size: 14px;
|
|
}
|
|
|
|
.partner-field-error {
|
|
margin: 8px 0 0;
|
|
padding: 0;
|
|
font-size: 13px;
|
|
line-height: 1.4;
|
|
color: var(--color-error);
|
|
}
|
|
|
|
.partner-store-phone-summary {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-store-phone-summary-main {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 4px;
|
|
}
|
|
|
|
.partner-store-name-list {
|
|
list-style: none;
|
|
margin: 0 0 16px;
|
|
padding: 0;
|
|
border-bottom: 1px solid rgba(226, 190, 188, 0.15);
|
|
padding-bottom: 12px;
|
|
}
|
|
|
|
.partner-store-name-list li {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 8px 0;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-store-name-list-header {
|
|
padding-bottom: 4px !important;
|
|
border-bottom: 1px solid rgba(226, 190, 188, 0.15);
|
|
}
|
|
|
|
.partner-store-name-list--compact li {
|
|
padding: 4px 0;
|
|
}
|
|
|
|
.partner-pending-stores {
|
|
margin-bottom: 12px;
|
|
padding-bottom: 12px;
|
|
border-bottom: 1px solid rgba(226, 190, 188, 0.15);
|
|
}
|
|
|
|
.partner-home-store-section {
|
|
background: var(--color-surface-container-lowest, #fff);
|
|
border-radius: 12px;
|
|
padding: 16px;
|
|
margin-bottom: 16px;
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.05);
|
|
}
|
|
|
|
.partner-home-store-header {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
margin-bottom: 12px;
|
|
}
|
|
|
|
.partner-home-store-row {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
padding: 12px 0;
|
|
border-bottom: 1px solid rgba(226, 190, 188, 0.15);
|
|
text-decoration: none;
|
|
color: inherit;
|
|
}
|
|
|
|
.partner-home-store-row:last-child {
|
|
border-bottom: none;
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
.partner-home-store-info {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-home-store-empty {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 8px 0;
|
|
}
|
|
|
|
.partner-leaderboard-tabs {
|
|
display: flex;
|
|
gap: 8px;
|
|
padding: 0 20px 12px;
|
|
overflow-x: auto;
|
|
}
|
|
|
|
.partner-leaderboard-tab {
|
|
border: none;
|
|
background: var(--color-surface-container-high, #e9e8e6);
|
|
color: var(--color-on-surface-variant, #5a413f);
|
|
padding: 8px 20px;
|
|
border-radius: 999px;
|
|
font-size: 13px;
|
|
white-space: nowrap;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-leaderboard-tab.active {
|
|
background: var(--color-heritage-red, #a61d24);
|
|
color: #fff;
|
|
}
|
|
|
|
.partner-leaderboard-self-card {
|
|
background: var(--color-heritage-red, #a61d24);
|
|
border-radius: 12px;
|
|
padding: 16px;
|
|
color: #fff;
|
|
margin-bottom: 8px;
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.15);
|
|
}
|
|
|
|
.partner-leaderboard-self-main {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-leaderboard-self-rank {
|
|
background: rgba(255, 255, 255, 0.15);
|
|
border-radius: 999px;
|
|
padding: 4px 10px;
|
|
font-size: 12px;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.partner-leaderboard-self-stats {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
margin-top: 12px;
|
|
padding-top: 12px;
|
|
border-top: 1px solid rgba(255, 255, 255, 0.15);
|
|
font-size: 13px;
|
|
}
|
|
|
|
.partner-field-input--block {
|
|
width: 100%;
|
|
padding: 0 16px;
|
|
min-height: 48px;
|
|
border: 1px solid rgba(226, 190, 188, 0.3);
|
|
border-radius: 8px;
|
|
background: var(--color-background);
|
|
}
|
|
|
|
.partner-leaderboard-section {
|
|
padding-top: 12px;
|
|
}
|
|
|
|
.partner-leaderboard-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: 8px;
|
|
}
|
|
|
|
.partner-leaderboard-row {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
padding: 10px 0;
|
|
border-bottom: 1px solid rgba(226, 190, 188, 0.1);
|
|
}
|
|
|
|
.partner-leaderboard-row--compact {
|
|
padding: 8px 0;
|
|
}
|
|
|
|
.partner-leaderboard-rank {
|
|
width: 28px;
|
|
height: 28px;
|
|
border-radius: 50%;
|
|
background: var(--color-surface-container-high);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-size: 12px;
|
|
font-weight: 700;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-leaderboard-row:first-of-type .partner-leaderboard-rank {
|
|
background: var(--color-aged-amber);
|
|
color: #fff;
|
|
}
|
|
|
|
.partner-leaderboard-preview .partner-leaderboard-header {
|
|
margin-bottom: 12px;
|
|
}
|
|
|
|
.partner-leaderboard-avatar {
|
|
position: relative;
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50%;
|
|
background: var(--color-surface-container-low);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-leaderboard-avatar .material-symbols-outlined {
|
|
font-size: 22px;
|
|
color: var(--color-subtle-gray);
|
|
font-variation-settings: 'FILL' 1;
|
|
}
|
|
|
|
.partner-leaderboard-avatar-badge {
|
|
position: absolute;
|
|
left: -2px;
|
|
top: -2px;
|
|
min-width: 16px;
|
|
height: 16px;
|
|
padding: 0 4px;
|
|
border-radius: 999px;
|
|
background: #9ca3af;
|
|
color: #fff;
|
|
font-size: 10px;
|
|
font-weight: 700;
|
|
line-height: 16px;
|
|
text-align: center;
|
|
box-shadow: 0 0 0 2px #fff;
|
|
}
|
|
|
|
.partner-leaderboard-avatar--rank-1 .partner-leaderboard-avatar-badge {
|
|
background: #d4a017;
|
|
}
|
|
|
|
.partner-leaderboard-avatar--rank-2 .partner-leaderboard-avatar-badge {
|
|
background: #9ca3af;
|
|
}
|
|
|
|
.partner-leaderboard-avatar--rank-3 .partner-leaderboard-avatar-badge {
|
|
background: #cd7f32;
|
|
}
|
|
|
|
.partner-leaderboard-info {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-leaderboard-stat {
|
|
text-align: right;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
/* ── Weekly report ── */
|
|
.partner-weekly-page {
|
|
padding: 0 20px 24px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 16px;
|
|
}
|
|
|
|
.partner-weekly-title-section {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-weekly-title-section h2 {
|
|
font-size: 20px;
|
|
line-height: 28px;
|
|
font-weight: 600;
|
|
color: var(--color-ink-black, #1a1a1a);
|
|
}
|
|
|
|
.partner-weekly-tabs {
|
|
display: flex;
|
|
gap: 4px;
|
|
overflow-x: auto;
|
|
padding-bottom: 4px;
|
|
-ms-overflow-style: none;
|
|
scrollbar-width: none;
|
|
}
|
|
|
|
.partner-weekly-tabs::-webkit-scrollbar {
|
|
display: none;
|
|
}
|
|
|
|
.partner-weekly-tab {
|
|
flex: none;
|
|
padding: 8px 16px;
|
|
border: none;
|
|
border-radius: 12px;
|
|
background: var(--color-surface-container, #efeeec);
|
|
color: var(--color-on-surface-variant, #5a413f);
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
letter-spacing: 0.05em;
|
|
cursor: pointer;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.partner-weekly-tab.active {
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
box-shadow: 0 2px 8px rgba(166, 29, 36, 0.25);
|
|
}
|
|
|
|
.partner-weekly-state {
|
|
padding: 24px 0;
|
|
text-align: center;
|
|
}
|
|
|
|
.partner-weekly-hero {
|
|
position: relative;
|
|
overflow: hidden;
|
|
border-radius: 12px;
|
|
background: #fff;
|
|
padding: 16px;
|
|
border: 1px solid rgba(166, 29, 36, 0.05);
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.05);
|
|
}
|
|
|
|
.partner-weekly-hero-top {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: flex-start;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-weekly-hero-label {
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
letter-spacing: 0.05em;
|
|
text-transform: uppercase;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-weekly-hero-gmv {
|
|
margin-top: 4px;
|
|
font-size: 32px;
|
|
line-height: 40px;
|
|
font-weight: 700;
|
|
letter-spacing: -0.02em;
|
|
color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-weekly-growth-badge {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
padding: 4px 8px;
|
|
border-radius: 999px;
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.partner-weekly-growth-badge .material-symbols-outlined {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.partner-weekly-growth-badge--up {
|
|
background: rgba(45, 106, 79, 0.1);
|
|
color: var(--color-success-green, #2d6a4f);
|
|
}
|
|
|
|
.partner-weekly-growth-badge--down {
|
|
background: rgba(186, 26, 26, 0.1);
|
|
color: var(--color-error, #ba1a1a);
|
|
}
|
|
|
|
.partner-weekly-hero-grid {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
gap: 16px;
|
|
margin-top: 12px;
|
|
padding-top: 12px;
|
|
border-top: 1px solid var(--color-surface-container-highest, #e3e2e0);
|
|
}
|
|
|
|
.partner-weekly-stat-value {
|
|
margin-top: 4px;
|
|
font-size: 18px;
|
|
line-height: 26px;
|
|
font-weight: 600;
|
|
color: var(--color-ink-black, #1a1a1a);
|
|
}
|
|
|
|
.partner-weekly-stat-sub {
|
|
margin-left: 4px;
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-weekly-card {
|
|
background: #fff;
|
|
border-radius: 12px;
|
|
padding: 16px;
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.05);
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-weekly-card-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-weekly-card-title {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-weekly-icon-amber {
|
|
color: var(--color-aged-amber);
|
|
font-variation-settings: 'FILL' 1;
|
|
}
|
|
|
|
.partner-weekly-target {
|
|
font-size: 18px;
|
|
font-weight: 600;
|
|
color: var(--color-aged-amber);
|
|
}
|
|
|
|
.partner-weekly-target-sub {
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-weekly-progress-track {
|
|
position: relative;
|
|
height: 12px;
|
|
width: 100%;
|
|
border-radius: 999px;
|
|
background: var(--color-surface-container-highest, #e3e2e0);
|
|
overflow: hidden;
|
|
}
|
|
|
|
.partner-weekly-progress-bar {
|
|
height: 100%;
|
|
border-radius: 999px;
|
|
background: linear-gradient(90deg, var(--color-heritage-red), var(--color-aged-amber));
|
|
transition: width 0.6s ease;
|
|
}
|
|
|
|
.partner-weekly-progress-hint {
|
|
font-style: italic;
|
|
}
|
|
|
|
.partner-weekly-chart {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-weekly-chart-bars {
|
|
display: flex;
|
|
align-items: flex-end;
|
|
justify-content: space-between;
|
|
gap: 8px;
|
|
height: 96px;
|
|
padding: 0 8px;
|
|
}
|
|
|
|
.partner-weekly-chart-bar {
|
|
flex: 1;
|
|
max-width: 16px;
|
|
border-radius: 999px 999px 0 0;
|
|
background: rgba(166, 29, 36, 0.45);
|
|
min-height: 8px;
|
|
}
|
|
|
|
.partner-weekly-chart-bar--peak {
|
|
background: var(--color-aged-amber);
|
|
box-shadow: 0 2px 6px rgba(255, 191, 0, 0.35);
|
|
}
|
|
|
|
.partner-weekly-chart-labels {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
gap: 4px;
|
|
font-size: 10px;
|
|
color: var(--color-subtle-gray);
|
|
padding: 0 4px;
|
|
}
|
|
|
|
.partner-weekly-chart-labels span {
|
|
flex: 1;
|
|
text-align: center;
|
|
}
|
|
|
|
.partner-weekly-rank-section {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-weekly-link {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 2px;
|
|
border: none;
|
|
background: none;
|
|
padding: 0;
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
color: var(--color-heritage-red);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-weekly-link .material-symbols-outlined {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.partner-weekly-rank-list {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-weekly-rank-row {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
padding: 8px;
|
|
border-radius: 12px;
|
|
background: #fff;
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.05);
|
|
}
|
|
|
|
.partner-weekly-rank-row--first {
|
|
border-left: 4px solid var(--color-aged-amber);
|
|
}
|
|
|
|
.partner-weekly-rank-badge {
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50%;
|
|
background: var(--color-surface-container, #efeeec);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-shrink: 0;
|
|
font-size: 18px;
|
|
font-weight: 600;
|
|
font-style: italic;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-weekly-rank-row--first .partner-weekly-rank-badge {
|
|
background: rgba(255, 191, 0, 0.1);
|
|
color: var(--color-aged-amber);
|
|
font-style: normal;
|
|
}
|
|
|
|
.partner-weekly-rank-row--first .partner-weekly-rank-badge .material-symbols-outlined {
|
|
font-variation-settings: 'FILL' 1;
|
|
}
|
|
|
|
.partner-weekly-rank-info {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-weekly-rank-name {
|
|
font-size: 16px;
|
|
font-weight: 600;
|
|
color: var(--color-ink-black, #1a1a1a);
|
|
}
|
|
|
|
.partner-weekly-rank-amount {
|
|
font-size: 16px;
|
|
font-weight: 600;
|
|
color: var(--color-heritage-red);
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-weekly-rank-row:not(.partner-weekly-rank-row--first) .partner-weekly-rank-amount {
|
|
color: var(--color-ink-black, #1a1a1a);
|
|
}
|
|
|
|
.partner-weekly-empty {
|
|
padding: 12px 0;
|
|
}
|
|
|
|
.partner-weekly-insight {
|
|
display: flex;
|
|
align-items: flex-start;
|
|
gap: 12px;
|
|
padding: 16px;
|
|
border-radius: 12px;
|
|
background: var(--color-surface-container-low, #f4f3f1);
|
|
border: 2px dashed rgba(166, 29, 36, 0.1);
|
|
}
|
|
|
|
.partner-weekly-insight .material-symbols-outlined {
|
|
color: var(--color-heritage-red);
|
|
font-variation-settings: 'FILL' 1;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-weekly-insight .headline-md {
|
|
margin-bottom: 4px;
|
|
}
|
|
|
|
/* ── Partner bottom tabbar(锁定尺寸,仅切换颜色)── */
|
|
nav.app-tabbar {
|
|
display: flex;
|
|
flex-direction: row;
|
|
align-items: stretch;
|
|
justify-content: stretch;
|
|
padding: 0;
|
|
padding-bottom: env(safe-area-inset-bottom, 0px);
|
|
height: calc(56px + env(safe-area-inset-bottom, 0px));
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
nav.app-tabbar .app-tabbar-item {
|
|
flex: 1 1 0;
|
|
min-width: 0;
|
|
max-width: 33.333%;
|
|
height: 56px;
|
|
padding: 6px 0 4px;
|
|
border-radius: 0;
|
|
gap: 2px;
|
|
color: var(--color-subtle-gray);
|
|
text-decoration: none;
|
|
transition: color 0.15s ease;
|
|
transform: none;
|
|
-webkit-tap-highlight-color: transparent;
|
|
touch-action: manipulation;
|
|
user-select: none;
|
|
}
|
|
|
|
nav.app-tabbar .app-tabbar-item.active {
|
|
color: var(--color-heritage-red);
|
|
}
|
|
|
|
nav.app-tabbar .app-tabbar-item:active,
|
|
nav.app-tabbar .app-tabbar-item:focus,
|
|
nav.app-tabbar .app-tabbar-item:focus-visible {
|
|
transform: none;
|
|
outline: none;
|
|
}
|
|
|
|
nav.app-tabbar .app-tabbar-icon {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-shrink: 0;
|
|
width: 24px;
|
|
height: 24px;
|
|
font-size: 24px;
|
|
line-height: 1;
|
|
overflow: hidden;
|
|
font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
|
|
}
|
|
|
|
nav.app-tabbar .app-tabbar-label {
|
|
display: block;
|
|
flex-shrink: 0;
|
|
width: 100%;
|
|
height: 14px;
|
|
line-height: 14px;
|
|
margin: 0;
|
|
padding: 0 1px;
|
|
font-size: 11px;
|
|
font-weight: 500;
|
|
letter-spacing: 0;
|
|
text-align: center;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
/* ── Store create stepper ── */
|
|
.partner-page-sticky {
|
|
min-height: 100vh;
|
|
padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px));
|
|
background: var(--color-surface);
|
|
}
|
|
|
|
.partner-page-sticky--tabbar {
|
|
padding-bottom: calc(88px + 56px + env(safe-area-inset-bottom, 0px));
|
|
}
|
|
|
|
.partner-sticky-footer--above-tabbar {
|
|
bottom: calc(56px + env(safe-area-inset-bottom, 0px));
|
|
z-index: 110;
|
|
}
|
|
|
|
.partner-stepper {
|
|
--step-circle-size: 32px;
|
|
padding: 16px var(--space-page) 0;
|
|
margin-bottom: var(--space-lg);
|
|
}
|
|
|
|
.partner-stepper-inner {
|
|
position: relative;
|
|
display: flex;
|
|
align-items: flex-start;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.partner-stepper-line {
|
|
position: absolute;
|
|
top: calc(var(--step-circle-size) / 2);
|
|
left: calc(100% / 6);
|
|
width: calc(100% * 2 / 3);
|
|
height: 2px;
|
|
background: var(--color-surface-container-highest);
|
|
z-index: 0;
|
|
transform: translateY(-50%);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.partner-stepper-line-fill {
|
|
height: 100%;
|
|
background: var(--color-heritage-red);
|
|
transition: width 0.4s;
|
|
}
|
|
|
|
.partner-step {
|
|
flex: 1;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
gap: 8px;
|
|
z-index: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-step-circle {
|
|
width: var(--step-circle-size);
|
|
height: var(--step-circle-size);
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
font-weight: 700;
|
|
background: var(--color-surface-container-highest);
|
|
color: var(--color-subtle-gray);
|
|
flex-shrink: 0;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.partner-step-circle--sm {
|
|
--step-circle-size: 24px;
|
|
width: 24px;
|
|
height: 24px;
|
|
font-size: 11px;
|
|
}
|
|
|
|
.partner-step-circle--active {
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
box-shadow: 0 4px 12px rgba(166, 29, 36, 0.2), 0 0 0 4px rgba(166, 29, 36, 0.1);
|
|
}
|
|
|
|
.partner-step-circle--done {
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
}
|
|
|
|
.partner-step-label {
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-step-label--active {
|
|
color: var(--color-heritage-red);
|
|
font-weight: 600;
|
|
}
|
|
|
|
.partner-form-card {
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
padding: var(--space-md);
|
|
margin: 0 var(--space-page) var(--space-md);
|
|
box-shadow: var(--shadow-card);
|
|
border: 1px solid rgba(226, 190, 188, 0.1);
|
|
}
|
|
|
|
.partner-section-title {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
margin-bottom: var(--space-md);
|
|
}
|
|
|
|
.partner-section-bar {
|
|
width: 4px;
|
|
height: 20px;
|
|
background: var(--color-heritage-red);
|
|
border-radius: 2px;
|
|
}
|
|
|
|
.partner-field {
|
|
margin-bottom: var(--space-md);
|
|
}
|
|
|
|
.partner-field label {
|
|
display: block;
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
color: var(--color-on-surface-variant);
|
|
margin-bottom: 4px;
|
|
}
|
|
|
|
.partner-field-input {
|
|
display: flex;
|
|
align-items: center;
|
|
border: 1px solid rgba(226, 190, 188, 0.3);
|
|
border-radius: 8px;
|
|
background: var(--color-surface-container-low);
|
|
padding: 0 12px;
|
|
min-height: 48px;
|
|
transition: border-color 0.2s, box-shadow 0.2s;
|
|
}
|
|
|
|
.partner-field-input:focus-within {
|
|
border-color: var(--color-heritage-red);
|
|
box-shadow: 0 0 0 1px rgba(166, 29, 36, 0.1);
|
|
}
|
|
|
|
.partner-field-input input,
|
|
.partner-field-input textarea {
|
|
flex: 1;
|
|
border: none;
|
|
background: transparent;
|
|
padding: 12px 0;
|
|
font-size: 14px;
|
|
color: var(--color-on-surface);
|
|
}
|
|
|
|
.partner-field-input input:focus,
|
|
.partner-field-input textarea:focus { outline: none; }
|
|
|
|
.partner-field-input .material-symbols-outlined {
|
|
color: var(--color-subtle-gray);
|
|
font-size: 20px;
|
|
margin-right: 8px;
|
|
}
|
|
|
|
.partner-field textarea {
|
|
width: 100%;
|
|
padding: 12px;
|
|
border: 1px solid rgba(226, 190, 188, 0.3);
|
|
border-radius: 8px;
|
|
background: var(--color-surface-container-low);
|
|
font-size: 14px;
|
|
resize: none;
|
|
}
|
|
|
|
.partner-field textarea:focus {
|
|
outline: none;
|
|
border-color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-info-banner {
|
|
margin: 0 var(--space-page) var(--space-md);
|
|
padding: var(--space-md);
|
|
border-radius: var(--radius-md);
|
|
background: rgba(166, 29, 36, 0.05);
|
|
border: 1px solid rgba(166, 29, 36, 0.1);
|
|
display: flex;
|
|
gap: var(--space-md);
|
|
align-items: flex-start;
|
|
}
|
|
|
|
.partner-upload-dashed {
|
|
width: 100%;
|
|
border: none;
|
|
background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='12' ry='12' stroke='%23A61D244D' stroke-width='2' stroke-dasharray='8%2c 8'/%3e%3c/svg%3e");
|
|
border-radius: 12px;
|
|
background-color: var(--color-surface-container-low);
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 12px;
|
|
cursor: pointer;
|
|
color: var(--color-primary);
|
|
padding: 24px;
|
|
}
|
|
|
|
.partner-upload-dashed--wide { aspect-ratio: 16 / 9; }
|
|
|
|
.partner-upload-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, 1fr);
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-upload-grid .partner-upload-dashed {
|
|
aspect-ratio: 1;
|
|
padding: 12px;
|
|
font-size: 10px;
|
|
}
|
|
|
|
.partner-upload-dashed--compact {
|
|
padding: 12px;
|
|
font-size: 10px;
|
|
aspect-ratio: 1;
|
|
}
|
|
|
|
.partner-wechat-auth-hint {
|
|
margin-bottom: 12px;
|
|
padding: 12px 14px;
|
|
border-radius: 12px;
|
|
background: rgba(166, 29, 36, 0.08);
|
|
border: 1px solid rgba(166, 29, 36, 0.15);
|
|
}
|
|
|
|
.partner-oss-upload-input {
|
|
position: absolute;
|
|
width: 1px;
|
|
height: 1px;
|
|
opacity: 0;
|
|
overflow: hidden;
|
|
clip: rect(0, 0, 0, 0);
|
|
}
|
|
|
|
.partner-upload-preview {
|
|
position: relative;
|
|
display: block;
|
|
width: 100%;
|
|
border: none;
|
|
padding: 0;
|
|
background: transparent;
|
|
border-radius: 12px;
|
|
overflow: hidden;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-upload-preview--wide {
|
|
aspect-ratio: 16 / 9;
|
|
}
|
|
|
|
.partner-upload-preview img {
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
display: block;
|
|
}
|
|
|
|
.partner-upload-preview-mask {
|
|
position: absolute;
|
|
inset: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 4px;
|
|
background: rgba(0, 0, 0, 0.35);
|
|
color: #fff;
|
|
opacity: 0;
|
|
transition: opacity 0.2s ease;
|
|
}
|
|
|
|
.partner-upload-preview:hover .partner-upload-preview-mask,
|
|
.partner-upload-preview:focus-within .partner-upload-preview-mask {
|
|
opacity: 1;
|
|
}
|
|
|
|
.partner-upload-file {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
width: 100%;
|
|
min-height: 96px;
|
|
padding: 16px;
|
|
border-radius: 12px;
|
|
background-color: var(--color-surface-container-low);
|
|
border: 1px solid rgba(166, 29, 36, 0.2);
|
|
cursor: pointer;
|
|
text-align: left;
|
|
}
|
|
|
|
.partner-region-trigger {
|
|
width: 100%;
|
|
justify-content: flex-start;
|
|
text-align: left;
|
|
}
|
|
|
|
.partner-region-chevron {
|
|
margin-left: auto;
|
|
}
|
|
|
|
.partner-region-overlay {
|
|
position: fixed;
|
|
inset: 0;
|
|
z-index: 10000;
|
|
background: rgba(0, 0, 0, 0.45);
|
|
display: flex;
|
|
align-items: flex-end;
|
|
justify-content: center;
|
|
padding-bottom: env(safe-area-inset-bottom, 0px);
|
|
}
|
|
|
|
.partner-region-sheet {
|
|
width: 100%;
|
|
max-width: 480px;
|
|
max-height: min(78vh, 640px);
|
|
background: var(--color-surface);
|
|
border-radius: 16px 16px 0 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.partner-region-sheet-header {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 12px 16px;
|
|
border-bottom: 1px solid var(--color-outline-variant);
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-region-sheet-btn {
|
|
border: none;
|
|
background: transparent;
|
|
color: var(--color-on-surface-variant);
|
|
font-size: 14px;
|
|
padding: 8px;
|
|
min-width: 48px;
|
|
}
|
|
|
|
.partner-region-sheet-btn--primary {
|
|
color: var(--color-primary);
|
|
font-weight: 600;
|
|
}
|
|
|
|
.partner-region-sheet-btn--primary:disabled {
|
|
opacity: 0.4;
|
|
}
|
|
|
|
.partner-region-steps {
|
|
display: flex;
|
|
gap: 8px;
|
|
padding: 12px 16px 0;
|
|
overflow-x: auto;
|
|
-webkit-overflow-scrolling: touch;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-region-step {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 6px;
|
|
border: 1px solid var(--color-outline-variant);
|
|
border-radius: 999px;
|
|
padding: 6px 12px;
|
|
background: var(--color-surface-container-low);
|
|
color: var(--color-on-surface-variant);
|
|
font-size: 12px;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.partner-region-step--active {
|
|
border-color: var(--color-primary);
|
|
color: var(--color-primary);
|
|
background: rgba(166, 29, 36, 0.08);
|
|
}
|
|
|
|
.partner-region-step--done {
|
|
color: var(--color-on-surface);
|
|
}
|
|
|
|
.partner-region-step-index {
|
|
width: 18px;
|
|
height: 18px;
|
|
border-radius: 50%;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
background: var(--color-surface-container-highest);
|
|
font-size: 11px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.partner-region-step--active .partner-region-step-index {
|
|
background: var(--color-primary);
|
|
color: #fff;
|
|
}
|
|
|
|
.partner-region-breadcrumb {
|
|
padding: 8px 16px 0;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-region-list {
|
|
flex: 1;
|
|
min-height: 0;
|
|
overflow-y: auto;
|
|
-webkit-overflow-scrolling: touch;
|
|
overscroll-behavior: contain;
|
|
touch-action: pan-y;
|
|
padding: 8px 0 calc(12px + env(safe-area-inset-bottom, 0px));
|
|
}
|
|
|
|
.partner-region-columns {
|
|
display: none;
|
|
}
|
|
|
|
.partner-region-column {
|
|
overflow-y: auto;
|
|
border-right: 1px solid var(--color-outline-variant);
|
|
}
|
|
|
|
.partner-region-column:last-child {
|
|
border-right: none;
|
|
}
|
|
|
|
.partner-region-item {
|
|
display: block;
|
|
width: 100%;
|
|
border: none;
|
|
background: transparent;
|
|
text-align: left;
|
|
padding: 14px 16px;
|
|
font-size: 15px;
|
|
color: var(--color-on-surface);
|
|
}
|
|
|
|
.partner-region-item--active {
|
|
color: var(--color-primary);
|
|
background: rgba(166, 29, 36, 0.08);
|
|
font-weight: 600;
|
|
}
|
|
|
|
.partner-sticky-footer {
|
|
position: fixed;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
width: 100%;
|
|
max-width: 480px;
|
|
margin: 0 auto;
|
|
transform: none;
|
|
background: rgba(250, 249, 247, 0.96);
|
|
backdrop-filter: blur(8px);
|
|
border-top: 1px solid rgba(226, 190, 188, 0.2);
|
|
box-shadow: 0 -4px 20px rgba(166, 29, 36, 0.05);
|
|
padding: 16px var(--space-page) calc(16px + env(safe-area-inset-bottom, 0px));
|
|
/* 高于 .app-tabbar(100),防止偶发叠层遮挡「下一步/提交」 */
|
|
z-index: 110;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 8px;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.partner-sticky-footer .partner-btn-primary {
|
|
flex: 2;
|
|
width: auto;
|
|
min-height: 48px;
|
|
padding: 12px 16px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 4px;
|
|
}
|
|
|
|
.partner-sticky-footer .partner-btn-outline {
|
|
flex: 1;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
/* ── Store list ── */
|
|
.partner-store-page {
|
|
padding-bottom: 96px;
|
|
}
|
|
|
|
.partner-page-title-block {
|
|
padding: 0 var(--space-page) 8px;
|
|
}
|
|
|
|
.partner-page-title-block h2 {
|
|
font-family: var(--font-headline);
|
|
font-size: 20px;
|
|
font-weight: 600;
|
|
color: var(--color-ink-black);
|
|
}
|
|
|
|
.partner-sticky-filter {
|
|
position: sticky;
|
|
top: 0;
|
|
z-index: 40;
|
|
background: rgba(250, 249, 247, 0.95);
|
|
backdrop-filter: blur(8px);
|
|
padding: 16px var(--space-page);
|
|
border-bottom: 1px solid var(--color-surface-container);
|
|
}
|
|
|
|
.partner-search {
|
|
position: relative;
|
|
margin-bottom: 16px;
|
|
}
|
|
|
|
.partner-search .material-symbols-outlined {
|
|
position: absolute;
|
|
left: 12px;
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
color: var(--color-subtle-gray);
|
|
font-size: 20px;
|
|
}
|
|
|
|
.partner-search input {
|
|
width: 100%;
|
|
height: 44px;
|
|
padding: 0 16px 0 40px;
|
|
border: none;
|
|
border-radius: var(--radius-md);
|
|
background: var(--color-surface-container-low);
|
|
font-size: 14px;
|
|
}
|
|
|
|
.partner-search input:focus {
|
|
outline: none;
|
|
box-shadow: 0 0 0 2px rgba(166, 29, 36, 0.2);
|
|
}
|
|
|
|
.partner-chips {
|
|
display: flex;
|
|
gap: 8px;
|
|
overflow-x: auto;
|
|
scrollbar-width: none;
|
|
padding-bottom: 4px;
|
|
}
|
|
|
|
.partner-chips::-webkit-scrollbar { display: none; }
|
|
|
|
.partner-chip {
|
|
flex-shrink: 0;
|
|
padding: 6px 16px;
|
|
border: none;
|
|
border-radius: var(--radius-full);
|
|
background: var(--color-surface-container-highest);
|
|
color: var(--color-on-surface-variant);
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-chip.active {
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
}
|
|
|
|
.partner-store-card {
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
padding: 16px;
|
|
margin: 0 var(--space-page) var(--space-md);
|
|
box-shadow: var(--shadow-card);
|
|
border: 1px solid rgba(166, 29, 36, 0.05);
|
|
display: block;
|
|
color: inherit;
|
|
}
|
|
|
|
.partner-store-card--dim { opacity: 0.7; }
|
|
|
|
.partner-store-card-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: flex-start;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-store-card-hit {
|
|
display: block;
|
|
width: 100%;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.partner-audit-result {
|
|
margin: 48px var(--space-page) 0;
|
|
padding: 32px 24px;
|
|
text-align: center;
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
box-shadow: var(--shadow-card);
|
|
}
|
|
|
|
.partner-audit-result-icon {
|
|
width: 72px;
|
|
height: 72px;
|
|
margin: 0 auto 16px;
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
background: rgba(42, 110, 187, 0.12);
|
|
color: var(--color-status-blue);
|
|
}
|
|
|
|
.partner-audit-result-icon .material-symbols-outlined {
|
|
font-size: 36px;
|
|
}
|
|
|
|
.partner-status-pill {
|
|
padding: 4px 8px;
|
|
border-radius: var(--radius-full);
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.partner-status-pill--open {
|
|
background: rgba(45, 106, 79, 0.1);
|
|
color: var(--color-success-green);
|
|
}
|
|
|
|
.partner-status-pill--paused {
|
|
background: rgba(255, 191, 0, 0.1);
|
|
color: var(--color-secondary);
|
|
}
|
|
|
|
.partner-status-pill--auditing {
|
|
background: rgba(42, 110, 187, 0.12);
|
|
color: var(--color-status-blue);
|
|
}
|
|
|
|
.partner-status-pill--closed {
|
|
background: var(--color-surface-container);
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-store-card-actions {
|
|
display: flex;
|
|
gap: 8px;
|
|
padding-top: 16px;
|
|
border-top: 1px solid var(--color-surface-container);
|
|
}
|
|
|
|
.partner-store-card-actions button {
|
|
flex: 1;
|
|
padding: 8px;
|
|
border-radius: 8px;
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-fab-link {
|
|
display: block;
|
|
margin: 0 var(--space-page) var(--space-md);
|
|
}
|
|
|
|
/* ── Store detail ── */
|
|
.partner-detail-page {
|
|
padding-bottom: 96px;
|
|
}
|
|
|
|
.partner-status-toggle {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, 1fr);
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-status-toggle button {
|
|
padding: 8px;
|
|
border-radius: 8px;
|
|
border: 1px solid var(--color-outline-variant);
|
|
background: transparent;
|
|
color: var(--color-on-surface-variant);
|
|
font-size: 14px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-status-toggle button.active {
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
border-color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-cover {
|
|
position: relative;
|
|
aspect-ratio: 16 / 9;
|
|
border-radius: var(--radius-md);
|
|
overflow: hidden;
|
|
margin-bottom: 24px;
|
|
border: 1px solid rgba(226, 190, 188, 0.2);
|
|
background: var(--color-surface-container);
|
|
}
|
|
|
|
.partner-cover .app-image,
|
|
.partner-cover img {
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
}
|
|
|
|
.partner-photo-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, 1fr);
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-photo-add {
|
|
aspect-ratio: 1;
|
|
border: 2px dashed var(--color-outline-variant);
|
|
border-radius: 8px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 4px;
|
|
color: var(--color-subtle-gray);
|
|
background: none;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-save-footer {
|
|
position: fixed;
|
|
bottom: 0;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
width: 100%;
|
|
max-width: 480px;
|
|
background: rgba(255, 255, 255, 0.8);
|
|
backdrop-filter: blur(12px);
|
|
border-top: 1px solid rgba(226, 190, 188, 0.2);
|
|
padding: 16px var(--space-page) calc(16px + env(safe-area-inset-bottom, 0px));
|
|
z-index: 50;
|
|
display: flex;
|
|
gap: 16px;
|
|
}
|
|
|
|
.partner-save-footer button {
|
|
height: 48px;
|
|
border-radius: var(--radius-md);
|
|
font-size: 16px;
|
|
font-weight: 500;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-save-cancel {
|
|
flex: 1;
|
|
border: 1px solid var(--color-outline-variant);
|
|
background: transparent;
|
|
color: var(--color-on-surface-variant);
|
|
}
|
|
|
|
.partner-save-submit {
|
|
flex: 2;
|
|
border: none;
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
box-shadow: 0 4px 12px rgba(166, 29, 36, 0.2);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-toast {
|
|
position: fixed;
|
|
top: 50%;
|
|
left: 50%;
|
|
transform: translate(-50%, -50%);
|
|
background: rgba(0, 0, 0, 0.75);
|
|
color: #fff;
|
|
padding: 12px 24px;
|
|
border-radius: 8px;
|
|
font-size: 14px;
|
|
z-index: 10001;
|
|
max-width: min(320px, calc(100vw - 40px));
|
|
text-align: center;
|
|
line-height: 1.5;
|
|
}
|
|
|
|
.partner-toast--error {
|
|
background: rgba(166, 29, 36, 0.92);
|
|
}
|
|
|
|
/* ── Orders ── */
|
|
.partner-orders-page {
|
|
padding-bottom: 32px;
|
|
}
|
|
|
|
.partner-segment {
|
|
display: flex;
|
|
background: var(--color-surface-container-highest);
|
|
border-radius: var(--radius-md);
|
|
padding: 4px;
|
|
margin: 0 var(--space-page) var(--space-md);
|
|
}
|
|
|
|
.partner-segment button {
|
|
flex: 1;
|
|
padding: 8px;
|
|
border: none;
|
|
border-radius: 8px;
|
|
font-family: var(--font-headline);
|
|
font-size: 16px;
|
|
background: transparent;
|
|
color: var(--color-on-surface-variant);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-segment button.active {
|
|
background: var(--color-card);
|
|
color: var(--color-heritage-red);
|
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
|
|
}
|
|
|
|
.partner-filter-row {
|
|
display: flex;
|
|
gap: 8px;
|
|
overflow-x: auto;
|
|
scrollbar-width: none;
|
|
padding: 0 var(--space-page) 8px;
|
|
}
|
|
|
|
.partner-filter-row::-webkit-scrollbar { display: none; }
|
|
|
|
.partner-filter-tab {
|
|
flex-shrink: 0;
|
|
padding: 4px 16px;
|
|
border: none;
|
|
background: none;
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
color: var(--color-on-surface-variant);
|
|
cursor: pointer;
|
|
border-bottom: 2px solid transparent;
|
|
}
|
|
|
|
.partner-filter-tab.active {
|
|
color: var(--color-heritage-red);
|
|
border-bottom-color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-order-card {
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
padding: 16px;
|
|
margin: 0 var(--space-page) 16px;
|
|
box-shadow: var(--shadow-card);
|
|
border: 1px solid rgba(166, 29, 36, 0.05);
|
|
display: block;
|
|
color: inherit;
|
|
}
|
|
|
|
.partner-order-card-top {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: 12px;
|
|
}
|
|
|
|
.partner-order-product {
|
|
display: flex;
|
|
gap: 16px;
|
|
margin-bottom: 16px;
|
|
}
|
|
|
|
.partner-order-product-img {
|
|
width: 80px;
|
|
height: 80px;
|
|
border-radius: 8px;
|
|
background: var(--color-surface-container);
|
|
object-fit: cover;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-benefit-tag {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
margin-top: 8px;
|
|
padding: 2px 8px;
|
|
background: rgba(255, 191, 0, 0.1);
|
|
border: 1px solid rgba(255, 191, 0, 0.2);
|
|
border-radius: 4px;
|
|
color: var(--color-aged-amber);
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
}
|
|
|
|
.partner-order-address {
|
|
display: flex;
|
|
gap: 8px;
|
|
padding: 12px 0;
|
|
border-top: 1px solid var(--color-surface-container-low);
|
|
font-size: 14px;
|
|
color: var(--color-on-surface-variant);
|
|
}
|
|
|
|
.partner-order-commission {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, 1fr);
|
|
gap: 8px;
|
|
padding-top: 12px;
|
|
border-top: 1px solid var(--color-surface-container-low);
|
|
text-align: center;
|
|
}
|
|
|
|
.partner-order-commission > div:nth-child(2) {
|
|
border-left: 1px solid var(--color-surface-container-low);
|
|
border-right: 1px solid var(--color-surface-container-low);
|
|
}
|
|
|
|
/* ── Order detail ── */
|
|
.partner-order-detail { padding-bottom: 88px; }
|
|
|
|
.partner-status-banner {
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
padding: 24px var(--space-page);
|
|
position: relative;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.partner-status-banner::before {
|
|
content: '';
|
|
position: absolute;
|
|
right: -20%;
|
|
top: -20%;
|
|
width: 256px;
|
|
height: 256px;
|
|
border: 20px solid rgba(255, 255, 255, 0.1);
|
|
border-radius: 50%;
|
|
}
|
|
|
|
.partner-timeline {
|
|
margin: var(--space-md) var(--space-page);
|
|
padding: var(--space-page);
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
box-shadow: var(--shadow-card);
|
|
position: relative;
|
|
}
|
|
|
|
.partner-timeline-line {
|
|
position: absolute;
|
|
left: 23px;
|
|
top: 28px;
|
|
bottom: 28px;
|
|
width: 2px;
|
|
background: var(--color-surface-container-highest);
|
|
}
|
|
|
|
.partner-timeline-item {
|
|
display: flex;
|
|
gap: 16px;
|
|
padding-bottom: 24px;
|
|
position: relative;
|
|
}
|
|
|
|
.partner-timeline-item:last-child { padding-bottom: 0; }
|
|
|
|
.partner-timeline-dot {
|
|
width: 24px;
|
|
height: 24px;
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-shrink: 0;
|
|
z-index: 1;
|
|
}
|
|
|
|
.partner-timeline-dot--done {
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
}
|
|
|
|
.partner-timeline-dot--done .material-symbols-outlined { font-size: 14px; font-variation-settings: 'FILL' 1; }
|
|
|
|
.partner-timeline-dot--current {
|
|
background: var(--color-heritage-red);
|
|
border: 4px solid #ffdad7;
|
|
}
|
|
|
|
.partner-timeline-dot--current::after {
|
|
content: '';
|
|
width: 8px;
|
|
height: 8px;
|
|
background: #fff;
|
|
border-radius: 50%;
|
|
}
|
|
|
|
.partner-timeline-dot--pending {
|
|
background: var(--color-surface-container-highest);
|
|
}
|
|
|
|
.partner-timeline-dot--pending::after {
|
|
content: '';
|
|
width: 8px;
|
|
height: 8px;
|
|
background: var(--color-subtle-gray);
|
|
border-radius: 50%;
|
|
}
|
|
|
|
.partner-detail-section {
|
|
margin: var(--space-md) var(--space-page);
|
|
padding: var(--space-page);
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
box-shadow: var(--shadow-card);
|
|
}
|
|
|
|
.partner-detail-section--accent {
|
|
border-left: 4px solid var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-info-row {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: flex-start;
|
|
padding: 6px 0;
|
|
font-size: 14px;
|
|
}
|
|
|
|
.partner-order-footer {
|
|
position: fixed;
|
|
bottom: 0;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
width: 100%;
|
|
max-width: 480px;
|
|
background: rgba(255, 255, 255, 0.8);
|
|
backdrop-filter: blur(12px);
|
|
border-top: 1px solid var(--color-surface-container-highest);
|
|
padding: 16px var(--space-page) calc(16px + env(safe-area-inset-bottom, 0px));
|
|
z-index: 50;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.partner-dev-tools {
|
|
padding: 8px var(--space-page);
|
|
border-top: 1px dashed var(--color-outline-variant);
|
|
background: var(--color-surface-container-low);
|
|
}
|
|
|
|
.partner-dev-tools summary {
|
|
font-size: 11px;
|
|
color: var(--color-subtle-gray);
|
|
cursor: pointer;
|
|
padding: 4px 0;
|
|
}
|
|
|
|
.partner-dev-tools button {
|
|
width: 100%;
|
|
margin-top: 4px;
|
|
padding: 6px;
|
|
font-size: 11px;
|
|
border: 1px solid var(--color-outline-variant);
|
|
border-radius: 4px;
|
|
background: var(--color-card);
|
|
cursor: pointer;
|
|
}
|
|
|
|
/* ── Center ── */
|
|
.partner-center-page { padding-bottom: 96px; }
|
|
|
|
.partner-profile-card {
|
|
margin: var(--space-md) var(--space-page);
|
|
padding: var(--space-md);
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
box-shadow: var(--shadow-card);
|
|
border: 1px solid rgba(166, 29, 36, 0.05);
|
|
display: flex;
|
|
gap: var(--space-md);
|
|
align-items: center;
|
|
}
|
|
|
|
.partner-profile-avatar {
|
|
width: 64px;
|
|
height: 64px;
|
|
border-radius: 50%;
|
|
background: var(--color-surface-container-low);
|
|
border: 2px solid rgba(166, 29, 36, 0.1);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
position: relative;
|
|
flex-shrink: 0;
|
|
padding: 0;
|
|
cursor: pointer;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.partner-profile-avatar:disabled {
|
|
opacity: 0.7;
|
|
cursor: wait;
|
|
}
|
|
|
|
.partner-profile-avatar .material-symbols-outlined {
|
|
font-size: 32px;
|
|
color: var(--color-subtle-gray);
|
|
font-variation-settings: 'FILL' 1;
|
|
}
|
|
|
|
.partner-profile-avatar-img {
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
display: block;
|
|
}
|
|
|
|
.partner-profile-avatar-hint {
|
|
position: absolute;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
padding: 2px 0;
|
|
font-size: 10px;
|
|
font-weight: 600;
|
|
line-height: 1.2;
|
|
text-align: center;
|
|
color: #fff;
|
|
background: rgba(166, 29, 36, 0.82);
|
|
}
|
|
|
|
.partner-profile-main {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-profile-title-row {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-profile-name {
|
|
margin: 0;
|
|
font-size: 20px;
|
|
font-weight: 700;
|
|
line-height: 1.3;
|
|
min-width: 0;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.partner-profile-location {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
margin-top: 4px;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
.partner-role-badge {
|
|
flex-shrink: 0;
|
|
background: var(--color-secondary-container);
|
|
color: var(--color-on-secondary-container);
|
|
padding: 4px 8px;
|
|
border-radius: 8px;
|
|
font-family: var(--font-label);
|
|
font-size: 10px;
|
|
font-weight: 600;
|
|
letter-spacing: 0.02em;
|
|
white-space: nowrap;
|
|
line-height: 1.2;
|
|
}
|
|
|
|
.partner-assets-section {
|
|
margin-top: var(--space-lg);
|
|
}
|
|
|
|
.partner-bills-banner {
|
|
margin: 0 var(--space-page) 12px;
|
|
padding: 16px;
|
|
background: rgba(166, 29, 36, 0.06);
|
|
border: 1px solid rgba(166, 29, 36, 0.12);
|
|
border-radius: var(--radius-md);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.partner-bills-banner-left {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-bills-icon {
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50%;
|
|
background: rgba(166, 29, 36, 0.1);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-finance-grid {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
gap: 12px;
|
|
margin: 0 var(--space-page);
|
|
}
|
|
|
|
.partner-finance-card {
|
|
background: var(--color-card);
|
|
padding: var(--space-md);
|
|
border-radius: var(--radius-md);
|
|
box-shadow: var(--shadow-card);
|
|
border: 1px solid rgba(166, 29, 36, 0.05);
|
|
text-decoration: none;
|
|
color: inherit;
|
|
display: block;
|
|
}
|
|
|
|
.partner-finance-card--hero {
|
|
grid-column: 1 / -1;
|
|
background: linear-gradient(135deg, #a61d24 0%, #820012 100%);
|
|
color: #fff;
|
|
box-shadow: 0 8px 24px rgba(166, 29, 36, 0.25);
|
|
border: none;
|
|
padding: 20px 24px;
|
|
}
|
|
|
|
.partner-finance-hero-label {
|
|
font-size: 13px;
|
|
opacity: 0.88;
|
|
margin: 0 0 8px;
|
|
}
|
|
|
|
.partner-finance-hero-amount {
|
|
font-size: 32px;
|
|
font-weight: 700;
|
|
letter-spacing: 0.02em;
|
|
margin: 0;
|
|
line-height: 1.2;
|
|
}
|
|
|
|
.partner-finance-value {
|
|
margin-top: 8px;
|
|
font-size: 18px;
|
|
font-weight: 700;
|
|
color: var(--color-on-surface);
|
|
}
|
|
|
|
.partner-section-head {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
margin: 0 var(--space-page) 8px;
|
|
}
|
|
|
|
.partner-menu-section .partner-section-head {
|
|
margin: 0 0 8px;
|
|
}
|
|
|
|
.partner-menu-item-right {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 6px;
|
|
}
|
|
|
|
.partner-menu-badge {
|
|
font-size: 12px;
|
|
font-weight: 600;
|
|
color: var(--color-heritage-red);
|
|
background: rgba(166, 29, 36, 0.08);
|
|
padding: 2px 8px;
|
|
border-radius: 999px;
|
|
}
|
|
|
|
.partner-menu-status {
|
|
font-size: 12px;
|
|
color: #2563eb;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.partner-logout-btn {
|
|
width: calc(100% - 2 * var(--space-page));
|
|
margin: var(--space-lg) var(--space-page) 0;
|
|
padding: 16px;
|
|
border: 1px solid rgba(166, 29, 36, 0.08);
|
|
border-radius: var(--radius-md);
|
|
background: var(--color-card);
|
|
box-shadow: var(--shadow-card);
|
|
color: var(--color-heritage-red);
|
|
font-family: var(--font-headline);
|
|
font-size: 16px;
|
|
font-weight: 600;
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.partner-logout-btn .material-symbols-outlined {
|
|
color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-center-footer {
|
|
text-align: center;
|
|
opacity: 0.35;
|
|
padding: 24px 0 8px;
|
|
}
|
|
|
|
.partner-menu-section {
|
|
margin: var(--space-lg) var(--space-page) 0;
|
|
}
|
|
|
|
.partner-menu-card {
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
box-shadow: var(--shadow-card);
|
|
border: 1px solid rgba(166, 29, 36, 0.05);
|
|
overflow: hidden;
|
|
}
|
|
|
|
.partner-menu-item {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
width: 100%;
|
|
padding: 16px;
|
|
border: none;
|
|
border-bottom: 1px solid var(--color-surface-container);
|
|
border-radius: 0;
|
|
background: transparent;
|
|
color: inherit;
|
|
font: inherit;
|
|
text-align: left;
|
|
text-decoration: none;
|
|
cursor: pointer;
|
|
box-sizing: border-box;
|
|
-webkit-appearance: none;
|
|
appearance: none;
|
|
}
|
|
|
|
.partner-menu-item:last-child { border-bottom: none; }
|
|
|
|
.partner-menu-item:active {
|
|
background: rgba(166, 29, 36, 0.04);
|
|
}
|
|
|
|
.partner-menu-item-left {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-menu-icon {
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50%;
|
|
background: rgba(166, 29, 36, 0.05);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
color: var(--color-heritage-red);
|
|
}
|
|
|
|
/* ── Settlement page ── */
|
|
.partner-settlement-page {
|
|
min-height: 100vh;
|
|
padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px));
|
|
}
|
|
|
|
.partner-settlement-body {
|
|
padding: 0 var(--space-page) 24px;
|
|
}
|
|
|
|
.partner-settlement-summary {
|
|
position: relative;
|
|
overflow: hidden;
|
|
background: var(--color-heritage-red);
|
|
border-radius: var(--radius-md);
|
|
padding: 24px;
|
|
color: #fff;
|
|
box-shadow: 0 8px 32px rgba(166, 29, 36, 0.15);
|
|
margin-bottom: var(--space-lg);
|
|
}
|
|
|
|
.partner-settlement-summary-deco {
|
|
position: absolute;
|
|
top: -24px;
|
|
right: -24px;
|
|
opacity: 0.1;
|
|
}
|
|
|
|
.partner-settlement-summary-deco .material-symbols-outlined {
|
|
font-size: 160px;
|
|
font-variation-settings: 'wght' 700;
|
|
}
|
|
|
|
.partner-settlement-summary-label {
|
|
position: relative;
|
|
z-index: 1;
|
|
text-align: center;
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
letter-spacing: 0.1em;
|
|
text-transform: uppercase;
|
|
opacity: 0.8;
|
|
margin-bottom: 8px;
|
|
}
|
|
|
|
.partner-settlement-summary-amount {
|
|
position: relative;
|
|
z-index: 1;
|
|
display: flex;
|
|
align-items: baseline;
|
|
justify-content: center;
|
|
gap: 4px;
|
|
font-family: var(--font-headline);
|
|
font-size: 32px;
|
|
font-weight: 700;
|
|
letter-spacing: -0.02em;
|
|
margin-bottom: 24px;
|
|
}
|
|
|
|
.partner-settlement-currency {
|
|
font-size: 18px;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.partner-settlement-summary-grid {
|
|
position: relative;
|
|
z-index: 1;
|
|
display: grid;
|
|
grid-template-columns: 1fr auto 1fr;
|
|
gap: 16px;
|
|
padding-top: 24px;
|
|
border-top: 1px solid rgba(255, 255, 255, 0.1);
|
|
}
|
|
|
|
.partner-settlement-summary-sub {
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
opacity: 0.7;
|
|
margin-bottom: 4px;
|
|
text-align: center;
|
|
}
|
|
|
|
.partner-settlement-summary-value {
|
|
font-family: var(--font-headline);
|
|
font-size: 18px;
|
|
font-weight: 600;
|
|
text-align: center;
|
|
}
|
|
|
|
.partner-settlement-summary-value--accent {
|
|
color: var(--color-secondary-fixed);
|
|
}
|
|
|
|
.partner-settlement-summary-divider {
|
|
width: 1px;
|
|
background: rgba(255, 255, 255, 0.1);
|
|
}
|
|
|
|
.partner-settlement-filters {
|
|
display: flex;
|
|
gap: 12px;
|
|
margin-bottom: var(--space-md);
|
|
}
|
|
|
|
.partner-settlement-month,
|
|
.partner-settlement-status-btn {
|
|
height: 48px;
|
|
border: none;
|
|
border-radius: var(--radius-md);
|
|
background: var(--color-surface-container-low);
|
|
font-family: var(--font-body);
|
|
font-size: 14px;
|
|
color: var(--color-on-surface-variant);
|
|
}
|
|
|
|
.partner-settlement-month {
|
|
flex: 1;
|
|
padding: 0 16px;
|
|
appearance: none;
|
|
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='%23999'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
|
|
background-repeat: no-repeat;
|
|
background-position: right 8px center;
|
|
background-size: 20px;
|
|
}
|
|
|
|
.partner-settlement-status-btn {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
padding: 0 16px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-settlement-status-btn .material-symbols-outlined {
|
|
color: var(--color-heritage-red);
|
|
font-size: 20px;
|
|
}
|
|
|
|
.partner-settlement-chips {
|
|
display: flex;
|
|
gap: 8px;
|
|
overflow-x: auto;
|
|
margin-bottom: var(--space-md);
|
|
padding-bottom: 4px;
|
|
-ms-overflow-style: none;
|
|
scrollbar-width: none;
|
|
}
|
|
|
|
.partner-settlement-chips::-webkit-scrollbar { display: none; }
|
|
|
|
.partner-settlement-chip {
|
|
flex-shrink: 0;
|
|
padding: 6px 16px;
|
|
border: 1px solid transparent;
|
|
border-radius: var(--radius-full);
|
|
background: var(--color-surface-container-high);
|
|
color: var(--color-on-surface-variant);
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-settlement-chip--active {
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
}
|
|
|
|
.partner-settlement-list-title {
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
letter-spacing: 0.05em;
|
|
text-transform: uppercase;
|
|
color: var(--color-subtle-gray);
|
|
margin-bottom: 12px;
|
|
padding: 0 4px;
|
|
}
|
|
|
|
.partner-settlement-list {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 12px;
|
|
}
|
|
|
|
.partner-settlement-item {
|
|
width: 100%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
padding: 16px;
|
|
border: 1px solid transparent;
|
|
border-radius: var(--radius-md);
|
|
background: var(--color-card);
|
|
box-shadow: var(--shadow-card);
|
|
text-align: left;
|
|
cursor: pointer;
|
|
color: inherit;
|
|
}
|
|
|
|
.partner-settlement-item:active {
|
|
transform: scale(0.98);
|
|
border-color: rgba(166, 29, 36, 0.1);
|
|
}
|
|
|
|
.partner-settlement-item-main {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-settlement-item-head {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
margin-bottom: 4px;
|
|
}
|
|
|
|
.partner-settlement-item-no {
|
|
font-weight: 600;
|
|
font-size: 14px;
|
|
}
|
|
|
|
.partner-settlement-status {
|
|
padding: 2px 8px;
|
|
border-radius: 6px;
|
|
font-family: var(--font-label);
|
|
font-size: 10px;
|
|
font-weight: 700;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.02em;
|
|
}
|
|
|
|
.partner-settlement-status--pending {
|
|
background: rgba(255, 224, 136, 0.3);
|
|
color: var(--color-on-secondary-fixed);
|
|
}
|
|
|
|
.partner-settlement-status--reviewing {
|
|
background: rgba(42, 110, 187, 0.12);
|
|
color: var(--color-status-blue);
|
|
}
|
|
|
|
.partner-settlement-status--settled {
|
|
background: rgba(45, 106, 79, 0.1);
|
|
color: var(--color-success-green);
|
|
}
|
|
|
|
.partner-settlement-status--rejected {
|
|
background: rgba(166, 29, 36, 0.12);
|
|
color: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-settlement-item-meta {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
color: var(--color-subtle-gray);
|
|
margin-bottom: 8px;
|
|
}
|
|
|
|
.partner-settlement-item-meta .material-symbols-outlined {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.partner-settlement-dot {
|
|
width: 4px;
|
|
height: 4px;
|
|
border-radius: 50%;
|
|
background: var(--color-outline-variant);
|
|
}
|
|
|
|
.partner-settlement-item-amount {
|
|
font-family: var(--font-headline);
|
|
font-size: 18px;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.partner-settlement-footer-note {
|
|
text-align: center;
|
|
padding: 32px 0 8px;
|
|
font-family: var(--font-label);
|
|
font-size: 12px;
|
|
color: var(--color-subtle-gray);
|
|
}
|
|
|
|
/* ── Bills page ── */
|
|
.partner-bills-page {
|
|
min-height: 100vh;
|
|
padding-bottom: calc(160px + env(safe-area-inset-bottom, 0px));
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.partner-bill-stepper {
|
|
--step-circle-size: 24px;
|
|
padding: 0 var(--space-page);
|
|
margin: var(--space-md) 0 var(--space-lg);
|
|
}
|
|
|
|
.partner-bill-stepper .partner-stepper-inner {
|
|
position: relative;
|
|
display: flex;
|
|
align-items: flex-start;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.partner-bill-stepper .partner-step {
|
|
flex: 1;
|
|
}
|
|
|
|
.partner-bill-card {
|
|
margin: 0 var(--space-page) var(--space-md);
|
|
background: var(--color-card);
|
|
border-radius: var(--radius-md);
|
|
box-shadow: var(--shadow-card);
|
|
border: 1px solid rgba(226, 190, 188, 0.1);
|
|
overflow: hidden;
|
|
}
|
|
|
|
.partner-bill-card-bar {
|
|
height: 8px;
|
|
background: var(--color-heritage-red);
|
|
}
|
|
|
|
.partner-bill-amount {
|
|
text-align: center;
|
|
padding: 24px 0;
|
|
border-top: 1px dashed rgba(226, 190, 188, 0.3);
|
|
border-bottom: 1px dashed rgba(226, 190, 188, 0.3);
|
|
margin: 16px 0;
|
|
}
|
|
|
|
.partner-bill-amount .amount-xl { font-size: 28px; }
|
|
|
|
.partner-bill-footer {
|
|
position: fixed;
|
|
bottom: 0;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
width: 100%;
|
|
max-width: 480px;
|
|
background: rgba(255, 255, 255, 0.95);
|
|
backdrop-filter: blur(10px);
|
|
border-top: 1px solid rgba(226, 190, 188, 0.2);
|
|
padding: 16px var(--space-page) calc(16px + env(safe-area-inset-bottom, 0px));
|
|
z-index: 60;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.partner-bill-footer .partner-btn-primary {
|
|
width: 100%;
|
|
min-height: 48px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
/* ─────────────────────────────────────────────
|
|
iOS / Android 机型适配:顶部安全区(刘海 / 状态栏)
|
|
viewport-fit=cover 下内容会延伸到状态栏,需为吸顶头部补 inset。
|
|
───────────────────────────────────────────── */
|
|
.partner-home-header,
|
|
.header.app-page-header,
|
|
.app-page-header,
|
|
.page-header {
|
|
padding-top: env(safe-area-inset-top, 0px);
|
|
height: auto;
|
|
min-height: calc(56px + env(safe-area-inset-top, 0px));
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
/* 登录 / 快捷登录页顶部留出状态栏空间,避免品牌区贴到刘海 */
|
|
.partner-auth-page {
|
|
padding-top: calc(48px + env(safe-area-inset-top, 0px));
|
|
}
|
|
|
|
/* 全屏容器铺满机身背景,安全区外也保持底色一致 */
|
|
html,
|
|
body {
|
|
min-height: 100vh;
|
|
min-height: 100dvh;
|
|
background: var(--color-background);
|
|
}
|
|
|
|
/* ── 子账号管理 ── */
|
|
.partner-staff-card {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
padding: 16px;
|
|
margin-bottom: 12px;
|
|
background: var(--color-surface-container-lowest, #fff);
|
|
border-radius: 12px;
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.05);
|
|
}
|
|
|
|
.partner-staff-avatar {
|
|
width: 48px;
|
|
height: 48px;
|
|
border-radius: 50%;
|
|
background: rgba(166, 29, 36, 0.08);
|
|
color: var(--color-heritage-red);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-weight: 700;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-staff-info {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.partner-staff-actions {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: flex-end;
|
|
gap: 8px;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.partner-role-badge--subtle {
|
|
background: var(--color-surface-container, #efeeec);
|
|
color: var(--color-on-surface-variant, #5a413f);
|
|
font-size: 10px;
|
|
padding: 2px 8px;
|
|
border-radius: 999px;
|
|
}
|
|
|
|
.partner-toggle {
|
|
width: 48px;
|
|
height: 24px;
|
|
border-radius: 999px;
|
|
border: none;
|
|
background: #ccc;
|
|
position: relative;
|
|
padding: 0;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-toggle--on {
|
|
background: var(--color-success-green, #2d6a4f);
|
|
}
|
|
|
|
.partner-toggle-thumb {
|
|
position: absolute;
|
|
top: 4px;
|
|
left: 4px;
|
|
width: 16px;
|
|
height: 16px;
|
|
border-radius: 50%;
|
|
background: #fff;
|
|
transition: transform 0.2s ease;
|
|
}
|
|
|
|
.partner-toggle--on .partner-toggle-thumb {
|
|
transform: translateX(24px);
|
|
}
|
|
|
|
.partner-icon-btn {
|
|
border: none;
|
|
background: transparent;
|
|
color: var(--color-outline, #8d706e);
|
|
padding: 0;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-icon-btn--danger {
|
|
color: var(--color-error, #ba1a1a);
|
|
}
|
|
|
|
.partner-fab-round {
|
|
position: fixed;
|
|
right: 20px;
|
|
bottom: calc(24px + env(safe-area-inset-bottom, 0px));
|
|
width: 56px;
|
|
height: 56px;
|
|
border-radius: 50%;
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
box-shadow: 0 4px 20px rgba(166, 29, 36, 0.3);
|
|
text-decoration: none;
|
|
z-index: 30;
|
|
}
|
|
|
|
.partner-sub-header {
|
|
padding: 12px 20px;
|
|
}
|
|
|
|
.partner-form-label {
|
|
display: block;
|
|
font-size: 13px;
|
|
color: var(--color-on-surface-variant, #5a413f);
|
|
margin-bottom: 8px;
|
|
}
|
|
|
|
.partner-form-input-wrap {
|
|
position: relative;
|
|
}
|
|
|
|
.partner-form-input-wrap .material-symbols-outlined {
|
|
position: absolute;
|
|
right: 12px;
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
color: var(--color-outline, #8d706e);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.partner-form-section {
|
|
margin-bottom: 16px;
|
|
}
|
|
|
|
.partner-proxy-fee-card {
|
|
margin-top: 8px;
|
|
padding: 16px;
|
|
border-radius: 16px;
|
|
background: rgba(166, 29, 36, 0.04);
|
|
border: 1px solid rgba(166, 29, 36, 0.08);
|
|
}
|
|
|
|
.partner-proxy-fee-row {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 6px 0;
|
|
}
|
|
|
|
.partner-proxy-fee-row--total {
|
|
margin-top: 8px;
|
|
padding-top: 12px;
|
|
border-top: 1px dashed rgba(166, 29, 36, 0.15);
|
|
}
|
|
|
|
.partner-warehouse-denied {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
text-align: center;
|
|
padding: 20px 12px;
|
|
}
|
|
|
|
.partner-warehouse-denied .material-symbols-outlined {
|
|
font-size: 36px;
|
|
font-variation-settings: 'FILL' 0;
|
|
}
|
|
|
|
.partner-home--flush-top.partner-store-page,
|
|
.partner-home--flush-top.partner-center-page {
|
|
padding-top: 12px;
|
|
}
|
|
|
|
.partner-home--flush-top .partner-sticky-filter {
|
|
padding-top: 12px;
|
|
}
|
|
|
|
.partner-leaderboard-self-tag {
|
|
display: inline-block;
|
|
margin-left: 6px;
|
|
padding: 1px 6px;
|
|
font-size: 10px;
|
|
font-weight: 700;
|
|
color: var(--color-heritage-red);
|
|
background: rgba(166, 29, 36, 0.12);
|
|
border-radius: 4px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.partner-order-card-wrap {
|
|
margin: 0 var(--space-page) 12px;
|
|
}
|
|
|
|
.partner-order-ship-btn {
|
|
display: block;
|
|
width: 100%;
|
|
margin-top: -4px;
|
|
padding: 10px 16px;
|
|
border: none;
|
|
border-radius: 0 0 var(--radius-md) var(--radius-md);
|
|
background: var(--color-heritage-red);
|
|
color: #fff;
|
|
font-size: 14px;
|
|
font-weight: 600;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.partner-order-ship-btn:disabled {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
.partner-order-footer-actions {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 10px;
|
|
width: 100%;
|
|
}
|
|
|
|
.partner-order-ship-btn--footer {
|
|
width: 100%;
|
|
justify-content: center;
|
|
}
|
|
|
|
.partner-ship-modal-backdrop {
|
|
position: fixed;
|
|
inset: 0;
|
|
z-index: 200;
|
|
background: rgba(0, 0, 0, 0.45);
|
|
display: flex;
|
|
align-items: flex-end;
|
|
justify-content: center;
|
|
padding: 16px;
|
|
}
|
|
|
|
.partner-ship-modal {
|
|
width: 100%;
|
|
max-width: 420px;
|
|
background: #fff;
|
|
border-radius: var(--radius-lg) var(--radius-lg) 0 0;
|
|
padding: 20px;
|
|
}
|
|
|
|
.partner-ship-field {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 6px;
|
|
margin-top: 12px;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.partner-ship-field input {
|
|
padding: 10px 12px;
|
|
border: 1px solid var(--color-outline-variant);
|
|
border-radius: var(--radius-sm);
|
|
}
|
|
|
|
.partner-ship-actions {
|
|
display: flex;
|
|
gap: 12px;
|
|
margin-top: 20px;
|
|
}
|
|
|
|
.partner-ship-actions .partner-btn-secondary,
|
|
.partner-ship-actions .partner-btn-primary {
|
|
flex: 1;
|
|
}
|
|
|
|
/* 微信 H5 系统标题已展示:隐藏页内重复标题,保留返回键与操作区 */
|
|
.app-page-title {
|
|
display: none !important;
|
|
}
|
|
|
|
/* 仅含标题的顶栏一并收起,去掉空白条;有返回/操作的顶栏保留 */
|
|
header:has(> .app-page-title:only-child),
|
|
.header.app-page-header:has(> .app-page-title:only-child),
|
|
.app-page-header:has(> .app-page-title:only-child) {
|
|
display: none !important;
|
|
height: 0 !important;
|
|
min-height: 0 !important;
|
|
padding: 0 !important;
|
|
margin: 0 !important;
|
|
overflow: hidden;
|
|
border: none !important;
|
|
box-shadow: none !important;
|
|
}
|