|
|
@@ -5,19 +5,19 @@ button,input,textarea,select { font:inherit; }
|
|
|
button,a { -webkit-tap-highlight-color:transparent; }
|
|
|
a { color:inherit; text-decoration:none; }
|
|
|
button { cursor:pointer; }
|
|
|
-button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); outline-offset:2px; }
|
|
|
-.app-shell { min-height:100vh; }
|
|
|
+.app-shell { min-height:100vh; display:flex; flex-direction:column; }
|
|
|
+.app-main { flex:1; }
|
|
|
.topbar { height:72px; padding:0 clamp(24px,5vw,76px); display:flex; align-items:center; border-bottom:1px solid rgba(220,225,235,.8); background:rgba(248,249,252,.82); backdrop-filter:blur(14px); position:sticky; top:0; z-index:20; }
|
|
|
.logo-link { display:flex; }
|
|
|
-.brand { display:flex; align-items:center; gap:13px; min-width:172px; }
|
|
|
-.brand>span:last-child { display:flex; align-items:baseline; gap:8px; }
|
|
|
-.brand strong { font-size:22px; letter-spacing:.18em; font-weight:500; color:#101522; }
|
|
|
-.brand small { color:#9da4b3; font-size:9px; letter-spacing:.22em; }
|
|
|
-.brand-mark { width:42px; height:26px; position:relative; display:inline-block; overflow:hidden; }
|
|
|
-.brand-mark:before,.brand-mark:after { content:''; position:absolute; border:1px solid #627087; border-color:#627087 transparent transparent transparent; border-radius:50%; width:46px; height:24px; left:1px; top:9px; transform:rotate(-6deg); }
|
|
|
-.brand-mark:after { border-color:#aeb6c5 transparent transparent transparent; width:38px; height:17px; left:7px; top:15px; }
|
|
|
-.brand-mark i,.brand-mark b { width:5px; height:5px; border-radius:50%; position:absolute; z-index:2; }
|
|
|
-.brand-mark i { background:#c4a05b; left:0; top:14px; }.brand-mark b { background:#344159; right:1px; top:12px; }
|
|
|
+.brand { display:inline-flex; align-items:center; gap:11px; text-decoration:none; user-select:none; }
|
|
|
+.brand-mark { width:38px; height:24px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; transition:transform .3s cubic-bezier(0.2,0.8,0.2,1); }
|
|
|
+.brand-mark-svg { width:100%; height:100%; overflow:visible; display:block; }
|
|
|
+.brand:hover .brand-mark { transform:translateY(-1px) scale(1.04); }
|
|
|
+.brand-text { display:inline-flex; align-items:baseline; gap:8px; }
|
|
|
+.brand strong, .brand-title { font-family:"Songti SC","Noto Serif SC","Source Han Serif CN","STSong","STKaiti","PingFang SC",serif; font-size:21px; font-weight:600; letter-spacing:.2em; color:#121826; line-height:1; transition:color .2s ease; }
|
|
|
+.brand small, .brand-sub { font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:9px; font-weight:500; letter-spacing:.28em; color:#8c97aa; line-height:1; text-transform:uppercase; }
|
|
|
+.brand--compact .brand-mark { width:32px; height:20px; }
|
|
|
+.brand--compact strong, .brand--compact .brand-title { font-size:18px; letter-spacing:.16em; }
|
|
|
.topbar nav { display:flex; height:100%; gap:34px; align-items:center; margin-left:60px; color:#9aa3b3; font-size:14px; }
|
|
|
.topbar nav a { color:#5b6880; font-weight:500; height:100%; display:flex; align-items:center; position:relative; }
|
|
|
.topbar nav a.active { color:var(--blue); font-weight:600; }
|
|
|
@@ -94,7 +94,8 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
.empty-state { background:rgba(255,255,255,.58); border:1px dashed #d9dfe9; min-height:260px; border-radius:12px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:30px; }
|
|
|
.empty-state h3 { margin:13px 0 5px; font-size:17px; font-weight:500; }
|
|
|
.empty-state p { color:#939cad; font-size:13px; margin:0 0 15px; }
|
|
|
-.empty-state a { color:var(--blue); font-size:13px; display:flex; align-items:center; gap:5px; }
|
|
|
+.empty-state a:not([class*="button"]) { color:var(--blue); font-size:13px; display:flex; align-items:center; gap:5px; }
|
|
|
+.empty-state .primary-button { color:#fff; }
|
|
|
.compact-empty { min-height:160px; padding:20px; }
|
|
|
.empty-orbit { width:58px; height:33px; border:1px solid #aab4c4; border-color:#aab4c4 transparent transparent transparent; border-radius:50%; position:relative; transform:rotate(-9deg); }
|
|
|
.empty-orbit i { position:absolute; width:6px; height:6px; background:#c4a05b; border-radius:50%; top:8px; left:-1px; }
|
|
|
@@ -115,7 +116,8 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
.form-title h3 { font-size:19px; margin:6px 0 0; font-weight:500; }
|
|
|
.form-title h4 { font-size:16px; margin:4px 0 0; font-weight:500; }
|
|
|
.paper-form label { display:flex; flex-direction:column; gap:9px; font-size:12px; color:#59657b; margin:0 0 22px; }
|
|
|
-.paper-form label b { color:#d86f67; }
|
|
|
+.paper-form label span { display:inline-flex; align-items:center; gap:3px; }
|
|
|
+.paper-form label b { color:#d86f67; font-weight:600; }
|
|
|
.paper-form input,.paper-form select,.paper-form textarea { border:1px solid #dfe4ec; border-radius:7px; color:#253149; background:#fbfcfe; padding:12px 13px; outline:none; width:100%; transition:.2s; }
|
|
|
.paper-form textarea { resize:vertical; line-height:1.6; }
|
|
|
.paper-form input:focus,.paper-form select:focus,.paper-form textarea:focus { border-color:#7599e8; box-shadow:0 0 0 3px rgba(36,91,214,.08); background:#fff; }
|
|
|
@@ -1792,10 +1794,32 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
border-left: 3px solid #3b82f6;
|
|
|
}
|
|
|
|
|
|
+.episode-content-heading {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ margin: 2px 0 12px;
|
|
|
+}
|
|
|
+
|
|
|
+.episode-content-heading > div {
|
|
|
+ display: flex;
|
|
|
+ align-items: baseline;
|
|
|
+ gap: 10px;
|
|
|
+}
|
|
|
+
|
|
|
+.episode-content-heading strong {
|
|
|
+ color: #1e293b;
|
|
|
+ font-size: 14px;
|
|
|
+}
|
|
|
+
|
|
|
+.episode-content-heading span {
|
|
|
+ color: #94a3b8;
|
|
|
+ font-size: 12px;
|
|
|
+}
|
|
|
+
|
|
|
.ep-body-grid {
|
|
|
- display: grid;
|
|
|
- grid-template-columns: 1.1fr 0.9fr;
|
|
|
- gap: 18px;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ gap: 12px;
|
|
|
}
|
|
|
|
|
|
.ep-notes-box,
|
|
|
@@ -1808,6 +1832,10 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
padding: 14px 16px;
|
|
|
}
|
|
|
|
|
|
+.ep-assets-box {
|
|
|
+ padding-bottom: 12px;
|
|
|
+}
|
|
|
+
|
|
|
.box-title-row {
|
|
|
display: flex;
|
|
|
justify-content: space-between;
|
|
|
@@ -1825,6 +1853,21 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
font-weight: 600;
|
|
|
}
|
|
|
|
|
|
+.optional-label,
|
|
|
+.asset-count-label {
|
|
|
+ padding: 2px 6px;
|
|
|
+ border-radius: 999px;
|
|
|
+ background: #f1f5f9;
|
|
|
+ color: #64748b;
|
|
|
+ font-size: 10px;
|
|
|
+ font-weight: 500;
|
|
|
+}
|
|
|
+
|
|
|
+.asset-count-label {
|
|
|
+ background: #eff6ff;
|
|
|
+ color: #2563eb;
|
|
|
+}
|
|
|
+
|
|
|
.dirty-badge {
|
|
|
font-size: 11px;
|
|
|
padding: 2px 6px;
|
|
|
@@ -1877,7 +1920,7 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
gap: 6px;
|
|
|
- margin-bottom: 12px;
|
|
|
+ margin-bottom: 0;
|
|
|
max-height: 160px;
|
|
|
overflow-y: auto;
|
|
|
}
|
|
|
@@ -1925,7 +1968,7 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
}
|
|
|
|
|
|
.ep-upload-zone {
|
|
|
- margin-top: auto;
|
|
|
+ margin-top: 8px;
|
|
|
}
|
|
|
|
|
|
.ep-file-label {
|
|
|
@@ -1949,6 +1992,12 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
border-color: #60a5fa;
|
|
|
}
|
|
|
|
|
|
+.compact-upload-button {
|
|
|
+ flex: 0 0 auto;
|
|
|
+ padding: 6px 11px;
|
|
|
+ border-style: solid;
|
|
|
+}
|
|
|
+
|
|
|
.ep-pending-files {
|
|
|
margin-top: 8px;
|
|
|
display: flex;
|
|
|
@@ -2619,22 +2668,23 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
color: #64748b;
|
|
|
}
|
|
|
|
|
|
-/* ==================== 危险操作区 (Danger Zone) & 删除课程弹窗 ==================== */
|
|
|
+/* ==================== 底部辅助操作区 & 删除课程弹窗 ==================== */
|
|
|
.course-danger-section {
|
|
|
- margin-top: 36px;
|
|
|
+ margin-top: 40px;
|
|
|
margin-bottom: 24px;
|
|
|
+ padding-top: 24px;
|
|
|
+ border-top: 1px dashed #e2e8f0;
|
|
|
}
|
|
|
|
|
|
.danger-zone-card {
|
|
|
- background: #ffffff;
|
|
|
- border: 1px solid #fee2e2;
|
|
|
- border-radius: 14px;
|
|
|
- padding: 20px 24px;
|
|
|
+ background: #fbfcfd;
|
|
|
+ border: 1px solid #f1f5f9;
|
|
|
+ border-radius: 10px;
|
|
|
+ padding: 14px 18px;
|
|
|
display: flex;
|
|
|
justify-content: space-between;
|
|
|
align-items: center;
|
|
|
- gap: 20px;
|
|
|
- box-shadow: 0 2px 10px rgba(239, 68, 68, 0.04);
|
|
|
+ gap: 16px;
|
|
|
}
|
|
|
|
|
|
@media (max-width: 640px) {
|
|
|
@@ -2647,63 +2697,61 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
.danger-zone-title-row {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
- gap: 8px;
|
|
|
- margin-bottom: 4px;
|
|
|
+ gap: 6px;
|
|
|
+ margin-bottom: 2px;
|
|
|
}
|
|
|
|
|
|
.danger-icon {
|
|
|
- color: #dc2626;
|
|
|
+ color: #94a3b8;
|
|
|
}
|
|
|
|
|
|
.danger-zone-info h4 {
|
|
|
margin: 0;
|
|
|
- font-size: 15px;
|
|
|
- font-weight: 600;
|
|
|
- color: #991b1b;
|
|
|
+ font-size: 13.5px;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #475569;
|
|
|
}
|
|
|
|
|
|
.danger-zone-info p {
|
|
|
margin: 0;
|
|
|
- font-size: 13px;
|
|
|
- color: #64748b;
|
|
|
+ font-size: 12px;
|
|
|
+ color: #94a3b8;
|
|
|
line-height: 1.5;
|
|
|
}
|
|
|
|
|
|
-.danger-button {
|
|
|
- background: #ef4444;
|
|
|
- color: #ffffff;
|
|
|
- border: 1px solid #dc2626;
|
|
|
- border-radius: var(--button-radius, 8px);
|
|
|
- min-height: 38px;
|
|
|
- padding: 0 18px;
|
|
|
- font-size: 13px;
|
|
|
- font-weight: 500;
|
|
|
+.danger-button-subtle {
|
|
|
+ background: transparent;
|
|
|
+ color: #64748b;
|
|
|
+ border: 1px solid #e2e8f0;
|
|
|
+ border-radius: var(--button-radius, 6px);
|
|
|
+ min-height: 32px;
|
|
|
+ padding: 0 12px;
|
|
|
+ font-size: 12px;
|
|
|
+ font-weight: 400;
|
|
|
display: inline-flex;
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
- gap: 7px;
|
|
|
+ gap: 6px;
|
|
|
cursor: pointer;
|
|
|
white-space: nowrap;
|
|
|
- transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
|
|
|
- box-shadow: 0 2px 8px rgba(239, 68, 68, 0.22);
|
|
|
+ transition: all 0.2s ease;
|
|
|
}
|
|
|
|
|
|
-.danger-button:hover:not(:disabled) {
|
|
|
- background: #dc2626;
|
|
|
- border-color: #b91c1c;
|
|
|
- transform: translateY(-1px);
|
|
|
- box-shadow: 0 4px 12px rgba(220, 38, 38, 0.28);
|
|
|
+.danger-button-subtle:hover:not(:disabled) {
|
|
|
+ background: #fef2f2;
|
|
|
+ color: #ef4444;
|
|
|
+ border-color: #fecaca;
|
|
|
}
|
|
|
|
|
|
-.danger-button:active:not(:disabled) {
|
|
|
- transform: translateY(0);
|
|
|
+.danger-button-subtle:active:not(:disabled) {
|
|
|
+ background: #fee2e2;
|
|
|
}
|
|
|
|
|
|
-.danger-button:disabled,
|
|
|
-.danger-button.disabled {
|
|
|
- background: #f1f5f9 !important;
|
|
|
- border-color: #e2e8f0 !important;
|
|
|
- color: #94a3b8 !important;
|
|
|
+.danger-button-subtle:disabled,
|
|
|
+.danger-button-subtle.disabled {
|
|
|
+ background: transparent !important;
|
|
|
+ border-color: #f1f5f9 !important;
|
|
|
+ color: #cbd5e1 !important;
|
|
|
opacity: 0.8 !important;
|
|
|
cursor: not-allowed !important;
|
|
|
box-shadow: none !important;
|
|
|
@@ -2714,53 +2762,32 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
.modal-dialog.delete-course-modal {
|
|
|
width: min(480px, 95vw);
|
|
|
background: #ffffff;
|
|
|
- border-radius: 16px;
|
|
|
- box-shadow: 0 25px 60px rgba(0, 0, 0, 0.2);
|
|
|
+ border-radius: 14px;
|
|
|
+ box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
overflow: hidden;
|
|
|
- border: 1px solid #fee2e2;
|
|
|
+ border: 1px solid #e2e8f0;
|
|
|
animation: modalPop 0.22s cubic-bezier(0.16, 1, 0.3, 1);
|
|
|
}
|
|
|
|
|
|
-.modal-header.danger-header {
|
|
|
- background: #fff5f5;
|
|
|
- border-bottom: 1px solid #fee2e2;
|
|
|
- padding: 18px 22px;
|
|
|
-}
|
|
|
-
|
|
|
-.danger-header-title {
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- gap: 12px;
|
|
|
-}
|
|
|
-
|
|
|
-.danger-icon-badge {
|
|
|
- width: 38px;
|
|
|
- height: 38px;
|
|
|
- border-radius: 50%;
|
|
|
- background: #fee2e2;
|
|
|
- color: #dc2626;
|
|
|
- display: grid;
|
|
|
- place-items: center;
|
|
|
- flex-shrink: 0;
|
|
|
-}
|
|
|
-
|
|
|
-.modal-badge.danger-badge {
|
|
|
- background: #fee2e2;
|
|
|
- color: #b91c1c;
|
|
|
+.modal-header-simple-title h3 {
|
|
|
+ margin: 0;
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: 600;
|
|
|
+ color: #1e293b;
|
|
|
}
|
|
|
|
|
|
.delete-modal-body {
|
|
|
- padding: 20px 22px;
|
|
|
+ padding: 18px 22px;
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
gap: 16px;
|
|
|
}
|
|
|
|
|
|
.danger-alert-card {
|
|
|
- background: #fff5f5;
|
|
|
- border: 1px solid #fed7d7;
|
|
|
+ background: #fff8f8;
|
|
|
+ border: 1px solid #fee2e2;
|
|
|
border-radius: 8px;
|
|
|
padding: 12px 14px;
|
|
|
}
|
|
|
@@ -2768,7 +2795,7 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
.danger-alert-card p {
|
|
|
margin: 0;
|
|
|
font-size: 13px;
|
|
|
- color: #742a2a;
|
|
|
+ color: #991b1b;
|
|
|
line-height: 1.55;
|
|
|
}
|
|
|
|
|
|
@@ -2791,11 +2818,11 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
|
|
|
.delete-confirm-input {
|
|
|
width: 100%;
|
|
|
- height: 40px;
|
|
|
- border-radius: 8px;
|
|
|
- border: 1.5px solid #cbd5e1;
|
|
|
+ height: 38px;
|
|
|
+ border-radius: 6px;
|
|
|
+ border: 1px solid #cbd5e1;
|
|
|
padding: 0 12px;
|
|
|
- font-size: 14px;
|
|
|
+ font-size: 13.5px;
|
|
|
background: #ffffff;
|
|
|
color: #0f172a;
|
|
|
transition: border-color 0.2s, box-shadow 0.2s;
|
|
|
@@ -2805,11 +2832,878 @@ button:focus-visible,a:focus-visible { outline:3px solid rgba(36,91,214,.22); ou
|
|
|
.delete-confirm-input:focus {
|
|
|
border-color: #ef4444;
|
|
|
outline: none;
|
|
|
- box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.15);
|
|
|
+ box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12);
|
|
|
}
|
|
|
|
|
|
.danger-submit-btn {
|
|
|
- min-height: 38px;
|
|
|
- padding: 0 20px;
|
|
|
+ background: #ef4444;
|
|
|
+ color: #ffffff;
|
|
|
+ border: 1px solid #dc2626;
|
|
|
+ border-radius: var(--button-radius, 6px);
|
|
|
+ min-height: 36px;
|
|
|
+ padding: 0 18px;
|
|
|
+ font-size: 13px;
|
|
|
+ font-weight: 500;
|
|
|
+ display: inline-flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ gap: 6px;
|
|
|
+ cursor: pointer;
|
|
|
+ white-space: nowrap;
|
|
|
+ transition: all 0.2s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.danger-submit-btn:hover:not(:disabled) {
|
|
|
+ background: #dc2626;
|
|
|
+ border-color: #b91c1c;
|
|
|
+}
|
|
|
+
|
|
|
+.danger-submit-btn:disabled {
|
|
|
+ background: #f1f5f9 !important;
|
|
|
+ border-color: #e2e8f0 !important;
|
|
|
+ color: #94a3b8 !important;
|
|
|
+ opacity: 0.8 !important;
|
|
|
+ cursor: not-allowed !important;
|
|
|
+}
|
|
|
+
|
|
|
+/* ==================== 联系星痕 · 等待制作面板卡片样式 ==================== */
|
|
|
+.success-panel-actions {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ gap: 14px;
|
|
|
+ margin-top: 32px;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-support-card {
|
|
|
+ margin-top: 28px;
|
|
|
+ background: #f8fafc;
|
|
|
+ border: 1px solid #e2e8f0;
|
|
|
+ border-radius: 12px;
|
|
|
+ padding: 22px 24px;
|
|
|
+ text-align: left;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-card-header {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ gap: 12px;
|
|
|
+ margin-bottom: 20px;
|
|
|
+ padding-bottom: 16px;
|
|
|
+ border-bottom: 1px solid #edf2f7;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-icon-badge {
|
|
|
+ width: 38px;
|
|
|
+ height: 38px;
|
|
|
+ border-radius: 8px;
|
|
|
+ background: #eff6ff;
|
|
|
+ color: #2563eb;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ flex-shrink: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-header-text h4 {
|
|
|
+ margin: 0 0 4px;
|
|
|
+ font-size: 15px;
|
|
|
+ font-weight: 600;
|
|
|
+ color: #0f172a;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-header-text p {
|
|
|
+ margin: 0;
|
|
|
+ font-size: 12px;
|
|
|
+ color: #64748b;
|
|
|
+ line-height: 1.5;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-card-body {
|
|
|
+ display: flex;
|
|
|
+ gap: 22px;
|
|
|
+ align-items: stretch;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-qr-container {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ align-items: center;
|
|
|
+ gap: 8px;
|
|
|
+ background: #ffffff;
|
|
|
+ padding: 12px;
|
|
|
+ border-radius: 10px;
|
|
|
+ border: 1px solid #e2e8f0;
|
|
|
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
|
|
|
+ flex-shrink: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-qr-box {
|
|
|
+ width: 140px;
|
|
|
+ height: 140px;
|
|
|
+ border-radius: 6px;
|
|
|
+ overflow: hidden;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ background: #ffffff;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-qr-image {
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ object-fit: contain;
|
|
|
+ display: block;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-qr-caption {
|
|
|
+ font-size: 11px;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #64748b;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-card-steps {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ justify-content: space-between;
|
|
|
+ gap: 10px;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-step-row {
|
|
|
+ display: flex;
|
|
|
+ align-items: flex-start;
|
|
|
+ gap: 12px;
|
|
|
+ padding: 10px 14px;
|
|
|
+ background: #ffffff;
|
|
|
+ border: 1px solid #f1f5f9;
|
|
|
+ border-radius: 8px;
|
|
|
+}
|
|
|
+
|
|
|
+.step-circle {
|
|
|
+ width: 22px;
|
|
|
+ height: 22px;
|
|
|
+ border-radius: 50%;
|
|
|
+ background: #eff6ff;
|
|
|
+ color: #2563eb;
|
|
|
+ font-size: 11px;
|
|
|
+ font-weight: 600;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ flex-shrink: 0;
|
|
|
+ margin-top: 1px;
|
|
|
+}
|
|
|
+
|
|
|
+.step-desc {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ gap: 2px;
|
|
|
}
|
|
|
|
|
|
+.step-desc strong {
|
|
|
+ font-size: 13px;
|
|
|
+ font-weight: 600;
|
|
|
+ color: #1e293b;
|
|
|
+}
|
|
|
+
|
|
|
+.step-desc span {
|
|
|
+ font-size: 12px;
|
|
|
+ color: #64748b;
|
|
|
+ line-height: 1.4;
|
|
|
+}
|
|
|
+
|
|
|
+/* ==================== 联系星痕 · 弹窗样式 ==================== */
|
|
|
+.modal-dialog.contact-modal {
|
|
|
+ width: min(560px, 95vw);
|
|
|
+ background: #ffffff;
|
|
|
+ border-radius: 14px;
|
|
|
+ box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ overflow: hidden;
|
|
|
+ border: 1px solid #e2e8f0;
|
|
|
+ animation: modalPop 0.22s cubic-bezier(0.16, 1, 0.3, 1);
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-body {
|
|
|
+ padding: 20px 24px;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ gap: 16px;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-intro {
|
|
|
+ background: #f8fafc;
|
|
|
+ border: 1px solid #e2e8f0;
|
|
|
+ border-radius: 8px;
|
|
|
+ padding: 12px 16px;
|
|
|
+ font-size: 13px;
|
|
|
+ color: #475569;
|
|
|
+ line-height: 1.6;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-intro p {
|
|
|
+ margin: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-intro strong {
|
|
|
+ color: #0f172a;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-qr-section {
|
|
|
+ display: flex;
|
|
|
+ gap: 16px;
|
|
|
+ align-items: stretch;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-qr-card {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ align-items: center;
|
|
|
+ gap: 8px;
|
|
|
+ background: #ffffff;
|
|
|
+ padding: 12px;
|
|
|
+ border-radius: 10px;
|
|
|
+ border: 1px solid #e2e8f0;
|
|
|
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
|
|
|
+ flex-shrink: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.qr-image-wrapper {
|
|
|
+ width: 140px;
|
|
|
+ height: 140px;
|
|
|
+ border-radius: 6px;
|
|
|
+ overflow: hidden;
|
|
|
+ background: #ffffff;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-qr-img {
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ object-fit: contain;
|
|
|
+ display: block;
|
|
|
+}
|
|
|
+
|
|
|
+.qr-badge-text {
|
|
|
+ display: inline-flex;
|
|
|
+ align-items: center;
|
|
|
+ gap: 5px;
|
|
|
+ font-size: 11px;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #64748b;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-steps {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ justify-content: space-between;
|
|
|
+ gap: 8px;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-step-card {
|
|
|
+ display: flex;
|
|
|
+ align-items: flex-start;
|
|
|
+ gap: 10px;
|
|
|
+ padding: 8px 12px;
|
|
|
+ background: #f8fafc;
|
|
|
+ border-radius: 8px;
|
|
|
+ border: 1px solid #f1f5f9;
|
|
|
+}
|
|
|
+
|
|
|
+.step-badge-num {
|
|
|
+ width: 20px;
|
|
|
+ height: 20px;
|
|
|
+ border-radius: 50%;
|
|
|
+ background: #eff6ff;
|
|
|
+ color: #2563eb;
|
|
|
+ font-size: 11px;
|
|
|
+ font-weight: 600;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ flex-shrink: 0;
|
|
|
+ margin-top: 1px;
|
|
|
+}
|
|
|
+
|
|
|
+.step-content strong {
|
|
|
+ display: block;
|
|
|
+ font-size: 12.5px;
|
|
|
+ font-weight: 600;
|
|
|
+ color: #1e293b;
|
|
|
+ margin-bottom: 2px;
|
|
|
+}
|
|
|
+
|
|
|
+.step-content p {
|
|
|
+ margin: 0;
|
|
|
+ font-size: 11.5px;
|
|
|
+ color: #64748b;
|
|
|
+ line-height: 1.4;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-footer-tip {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ gap: 8px;
|
|
|
+ font-size: 12px;
|
|
|
+ color: #475569;
|
|
|
+ background: #eff6ff;
|
|
|
+ border: 1px solid #dbeafe;
|
|
|
+ padding: 10px 14px;
|
|
|
+ border-radius: 8px;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-modal-footer-tip svg {
|
|
|
+ color: #3b82f6;
|
|
|
+ flex-shrink: 0;
|
|
|
+}
|
|
|
+
|
|
|
+@media (max-width: 600px) {
|
|
|
+ .contact-card-body,
|
|
|
+ .contact-modal-qr-section {
|
|
|
+ flex-direction: column;
|
|
|
+ align-items: center;
|
|
|
+ }
|
|
|
+ .contact-card-steps,
|
|
|
+ .contact-modal-steps {
|
|
|
+ width: 100%;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/* ==========================================================================
|
|
|
+ 帮助中心 (Help & FAQ Page)
|
|
|
+ ========================================================================== */
|
|
|
+
|
|
|
+.help-page {
|
|
|
+ padding-top: 32px;
|
|
|
+ max-width: 1100px;
|
|
|
+}
|
|
|
+
|
|
|
+.help-hero {
|
|
|
+ text-align: center;
|
|
|
+ padding: 30px 20px 48px;
|
|
|
+ margin-bottom: 24px;
|
|
|
+ border-bottom: 1px solid var(--line);
|
|
|
+ position: relative;
|
|
|
+}
|
|
|
+
|
|
|
+.help-hero-content {
|
|
|
+ max-width: 680px;
|
|
|
+ margin: 0 auto;
|
|
|
+}
|
|
|
+
|
|
|
+.help-hero-content .eyebrow {
|
|
|
+ justify-content: center;
|
|
|
+ margin-bottom: 14px !important;
|
|
|
+}
|
|
|
+
|
|
|
+.help-hero h1 {
|
|
|
+ font-size: clamp(28px, 3.6vw, 42px);
|
|
|
+ font-weight: 400;
|
|
|
+ color: var(--ink);
|
|
|
+ margin: 0 0 14px;
|
|
|
+ letter-spacing: -0.02em;
|
|
|
+}
|
|
|
+
|
|
|
+.help-hero-desc {
|
|
|
+ color: var(--muted);
|
|
|
+ font-size: 15px;
|
|
|
+ line-height: 1.7;
|
|
|
+ margin: 0 auto 32px;
|
|
|
+ max-width: 540px;
|
|
|
+}
|
|
|
+
|
|
|
+/* 搜索栏 */
|
|
|
+.help-search-bar {
|
|
|
+ position: relative;
|
|
|
+ max-width: 580px;
|
|
|
+ margin: 0 auto;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+}
|
|
|
+
|
|
|
+.help-search-bar .search-icon {
|
|
|
+ position: absolute;
|
|
|
+ left: 18px;
|
|
|
+ color: #94a3b8;
|
|
|
+ pointer-events: none;
|
|
|
+}
|
|
|
+
|
|
|
+.help-search-bar input {
|
|
|
+ width: 100%;
|
|
|
+ height: 52px;
|
|
|
+ padding: 0 70px 0 50px;
|
|
|
+ font-size: 15px;
|
|
|
+ background: #fff;
|
|
|
+ border: 1px solid #dbe2ee;
|
|
|
+ border-radius: 26px;
|
|
|
+ color: var(--ink);
|
|
|
+ box-shadow: 0 4px 20px rgba(36, 91, 214, 0.05);
|
|
|
+ transition: all 0.2s ease;
|
|
|
+ outline: none;
|
|
|
+}
|
|
|
+
|
|
|
+.help-search-bar input:focus {
|
|
|
+ border-color: var(--blue);
|
|
|
+ box-shadow: 0 0 0 4px rgba(36, 91, 214, 0.1);
|
|
|
+}
|
|
|
+
|
|
|
+.clear-search-btn {
|
|
|
+ position: absolute;
|
|
|
+ right: 16px;
|
|
|
+ background: none;
|
|
|
+ border: none;
|
|
|
+ font-size: 12px;
|
|
|
+ color: var(--muted);
|
|
|
+ padding: 4px 8px;
|
|
|
+ border-radius: 4px;
|
|
|
+}
|
|
|
+
|
|
|
+.clear-search-btn:hover {
|
|
|
+ color: var(--ink);
|
|
|
+ background: #f1f5f9;
|
|
|
+}
|
|
|
+
|
|
|
+/* 页面小节通用头部 */
|
|
|
+.help-section {
|
|
|
+ margin-bottom: 56px;
|
|
|
+}
|
|
|
+
|
|
|
+.help-section-header {
|
|
|
+ text-align: center;
|
|
|
+ margin-bottom: 32px;
|
|
|
+}
|
|
|
+
|
|
|
+.help-section-header h2 {
|
|
|
+ font-size: 24px;
|
|
|
+ font-weight: 500;
|
|
|
+ color: var(--ink);
|
|
|
+ margin: 6px 0 8px;
|
|
|
+}
|
|
|
+
|
|
|
+.help-section-header p {
|
|
|
+ color: var(--muted);
|
|
|
+ font-size: 14px;
|
|
|
+ margin: 0;
|
|
|
+}
|
|
|
+
|
|
|
+/* 核心特性 4 卡片 */
|
|
|
+.help-feature-grid {
|
|
|
+ display: grid;
|
|
|
+ grid-template-columns: repeat(4, 1fr);
|
|
|
+ gap: 18px;
|
|
|
+}
|
|
|
+
|
|
|
+.help-feature-card {
|
|
|
+ background: #fff;
|
|
|
+ border: 1px solid var(--line);
|
|
|
+ border-radius: 12px;
|
|
|
+ padding: 24px 20px;
|
|
|
+ transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+
|
|
|
+.help-feature-card:hover {
|
|
|
+ border-color: #cbd5e1;
|
|
|
+ transform: translateY(-2px);
|
|
|
+ box-shadow: 0 10px 28px rgba(30, 41, 59, 0.06);
|
|
|
+}
|
|
|
+
|
|
|
+.feature-icon-box {
|
|
|
+ width: 44px;
|
|
|
+ height: 44px;
|
|
|
+ border-radius: 10px;
|
|
|
+ background: #edf3ff;
|
|
|
+ color: var(--blue);
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ margin-bottom: 16px;
|
|
|
+}
|
|
|
+
|
|
|
+.help-feature-card h3 {
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: 600;
|
|
|
+ color: var(--ink);
|
|
|
+ margin: 0 0 8px;
|
|
|
+}
|
|
|
+
|
|
|
+.help-feature-card p {
|
|
|
+ font-size: 13px;
|
|
|
+ color: #64748b;
|
|
|
+ line-height: 1.65;
|
|
|
+ margin: 0;
|
|
|
+}
|
|
|
+
|
|
|
+/* 四步流程指南 */
|
|
|
+.help-steps-grid {
|
|
|
+ display: grid;
|
|
|
+ grid-template-columns: repeat(4, 1fr);
|
|
|
+ gap: 16px;
|
|
|
+}
|
|
|
+
|
|
|
+.help-step-item {
|
|
|
+ background: #fff;
|
|
|
+ border: 1px solid var(--line);
|
|
|
+ border-radius: 12px;
|
|
|
+ padding: 22px 18px;
|
|
|
+ position: relative;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+
|
|
|
+.step-badge {
|
|
|
+ font-size: 20px;
|
|
|
+ font-weight: 700;
|
|
|
+ color: #93c5fd;
|
|
|
+ font-family: Inter, monospace;
|
|
|
+ margin-bottom: 12px;
|
|
|
+ line-height: 1;
|
|
|
+}
|
|
|
+
|
|
|
+.step-item-body h4 {
|
|
|
+ font-size: 15px;
|
|
|
+ font-weight: 600;
|
|
|
+ color: var(--ink);
|
|
|
+ margin: 0 0 6px;
|
|
|
+}
|
|
|
+
|
|
|
+.step-item-body p {
|
|
|
+ font-size: 12.5px;
|
|
|
+ color: #64748b;
|
|
|
+ line-height: 1.6;
|
|
|
+ margin: 0;
|
|
|
+}
|
|
|
+
|
|
|
+/* FAQ 分类切换 Tabs */
|
|
|
+.faq-category-tabs {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ gap: 8px;
|
|
|
+ margin-bottom: 24px;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-tab-btn {
|
|
|
+ background: #fff;
|
|
|
+ border: 1px solid #dce2ed;
|
|
|
+ color: #4b5563;
|
|
|
+ padding: 8px 18px;
|
|
|
+ border-radius: 20px;
|
|
|
+ font-size: 13px;
|
|
|
+ font-weight: 500;
|
|
|
+ transition: all 0.2s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-tab-btn:hover {
|
|
|
+ border-color: #cbd5e1;
|
|
|
+ background: #f8fafc;
|
|
|
+ color: var(--ink);
|
|
|
+}
|
|
|
+
|
|
|
+.faq-tab-btn.active {
|
|
|
+ background: var(--blue);
|
|
|
+ color: #fff;
|
|
|
+ border-color: var(--blue);
|
|
|
+ box-shadow: 0 4px 12px rgba(36, 91, 214, 0.2);
|
|
|
+}
|
|
|
+
|
|
|
+/* FAQ 手风琴列表 */
|
|
|
+.faq-accordion-list {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ gap: 12px;
|
|
|
+ max-width: 860px;
|
|
|
+ margin: 0 auto;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-accordion-item {
|
|
|
+ background: #fff;
|
|
|
+ border: 1px solid var(--line);
|
|
|
+ border-radius: 10px;
|
|
|
+ overflow: hidden;
|
|
|
+ transition: border-color 0.2s ease, box-shadow 0.2s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-accordion-item:hover {
|
|
|
+ border-color: #cbd5e1;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-accordion-item.is-open {
|
|
|
+ border-color: #93c5fd;
|
|
|
+ box-shadow: 0 4px 18px rgba(36, 91, 214, 0.06);
|
|
|
+}
|
|
|
+
|
|
|
+.faq-question-btn {
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ text-align: left;
|
|
|
+ padding: 18px 22px;
|
|
|
+ background: transparent;
|
|
|
+ border: none;
|
|
|
+ font-size: 15px;
|
|
|
+ font-weight: 500;
|
|
|
+ color: var(--ink);
|
|
|
+ gap: 16px;
|
|
|
+ transition: background 0.15s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-question-btn:hover {
|
|
|
+ background: #f8fafc;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-question-text {
|
|
|
+ flex: 1;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-chevron-icon {
|
|
|
+ color: #94a3b8;
|
|
|
+ display: grid;
|
|
|
+ place-items: center;
|
|
|
+ flex-shrink: 0;
|
|
|
+ transition: color 0.15s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-accordion-item.is-open .faq-chevron-icon {
|
|
|
+ color: var(--blue);
|
|
|
+}
|
|
|
+
|
|
|
+.faq-answer-content {
|
|
|
+ border-top: 1px solid #f1f5f9;
|
|
|
+ background: #fafcff;
|
|
|
+ padding: 18px 22px;
|
|
|
+ font-size: 14px;
|
|
|
+ color: #475569;
|
|
|
+ line-height: 1.75;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-answer-inner {
|
|
|
+ max-width: 100%;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-empty-state {
|
|
|
+ text-align: center;
|
|
|
+ padding: 48px 20px;
|
|
|
+ background: #fff;
|
|
|
+ border: 1px dashed #cbd5e1;
|
|
|
+ border-radius: 12px;
|
|
|
+ color: #94a3b8;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-empty-state svg {
|
|
|
+ margin-bottom: 12px;
|
|
|
+ color: #94a3b8;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-empty-state h4 {
|
|
|
+ font-size: 16px;
|
|
|
+ color: var(--ink);
|
|
|
+ margin: 0 0 6px;
|
|
|
+ font-weight: 500;
|
|
|
+}
|
|
|
+
|
|
|
+.faq-empty-state p {
|
|
|
+ font-size: 13px;
|
|
|
+ margin: 0;
|
|
|
+}
|
|
|
+
|
|
|
+/* 底部联系卡片 Banner */
|
|
|
+.help-contact-banner {
|
|
|
+ background: linear-gradient(135deg, #ffffff 0%, #edf4ff 100%);
|
|
|
+ border: 1px solid #d4e2fc;
|
|
|
+ border-radius: 14px;
|
|
|
+ padding: 30px 36px;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ gap: 24px;
|
|
|
+ box-shadow: 0 8px 30px rgba(36, 91, 214, 0.06);
|
|
|
+ margin-top: 20px;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-banner-content {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ gap: 18px;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-banner-icon {
|
|
|
+ width: 52px;
|
|
|
+ height: 52px;
|
|
|
+ border-radius: 12px;
|
|
|
+ background: #fff;
|
|
|
+ color: var(--blue);
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ flex-shrink: 0;
|
|
|
+ box-shadow: 0 4px 14px rgba(36, 91, 214, 0.12);
|
|
|
+}
|
|
|
+
|
|
|
+.contact-banner-content h3 {
|
|
|
+ font-size: 17px;
|
|
|
+ font-weight: 600;
|
|
|
+ color: var(--ink);
|
|
|
+ margin: 0 0 6px;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-banner-content p {
|
|
|
+ font-size: 13.5px;
|
|
|
+ color: #64748b;
|
|
|
+ margin: 0;
|
|
|
+ line-height: 1.5;
|
|
|
+}
|
|
|
+
|
|
|
+.contact-banner-action {
|
|
|
+ flex-shrink: 0;
|
|
|
+}
|
|
|
+
|
|
|
+/* 响应式断点 */
|
|
|
+@media (max-width: 960px) {
|
|
|
+ .help-feature-grid,
|
|
|
+ .help-steps-grid {
|
|
|
+ grid-template-columns: repeat(2, 1fr);
|
|
|
+ }
|
|
|
+ .help-contact-banner {
|
|
|
+ flex-direction: column;
|
|
|
+ text-align: center;
|
|
|
+ padding: 28px 24px;
|
|
|
+ }
|
|
|
+ .contact-banner-content {
|
|
|
+ flex-direction: column;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+@media (max-width: 600px) {
|
|
|
+ .help-feature-grid,
|
|
|
+ .help-steps-grid {
|
|
|
+ grid-template-columns: 1fr;
|
|
|
+ }
|
|
|
+ .help-hero {
|
|
|
+ padding: 20px 10px 36px;
|
|
|
+ }
|
|
|
+ .faq-question-btn {
|
|
|
+ padding: 15px 16px;
|
|
|
+ font-size: 14px;
|
|
|
+ }
|
|
|
+ .faq-answer-content {
|
|
|
+ padding: 15px 16px;
|
|
|
+ font-size: 13.5px;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/* ==========================================================================
|
|
|
+ 全站页脚 (Site Footer)
|
|
|
+ ========================================================================== */
|
|
|
+
|
|
|
+.auth-wrapper {
|
|
|
+ min-height: 100vh;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+
|
|
|
+.auth-wrapper .auth-page {
|
|
|
+ flex: 1;
|
|
|
+ min-height: auto;
|
|
|
+}
|
|
|
+
|
|
|
+.admin-shell {
|
|
|
+ min-height: 100vh;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+
|
|
|
+.admin-main {
|
|
|
+ flex: 1;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer {
|
|
|
+ border-top: 1px solid rgba(226, 232, 240, 0.7);
|
|
|
+ background: rgba(248, 249, 252, 0.6);
|
|
|
+ backdrop-filter: blur(8px);
|
|
|
+ padding: 16px clamp(24px, 5vw, 76px);
|
|
|
+ margin-top: auto;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-inner {
|
|
|
+ max-width: 1400px;
|
|
|
+ margin: 0 auto;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ gap: 14px;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ font-size: 11.5px;
|
|
|
+ color: #94a3b8;
|
|
|
+ letter-spacing: 0.01em;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-company {
|
|
|
+ display: inline-flex;
|
|
|
+ align-items: center;
|
|
|
+ gap: 6px;
|
|
|
+ font-weight: 400;
|
|
|
+ color: #94a3b8;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-dot {
|
|
|
+ color: #cbd5e1;
|
|
|
+ user-select: none;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-links {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ gap: 10px;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-beian {
|
|
|
+ color: #94a3b8;
|
|
|
+ text-decoration: none;
|
|
|
+ transition: color 0.2s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-beian:hover {
|
|
|
+ color: #475569;
|
|
|
+ text-decoration: underline;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-sep {
|
|
|
+ color: #e2e8f0;
|
|
|
+ user-select: none;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-help-link {
|
|
|
+ color: #64748b;
|
|
|
+ font-weight: 400;
|
|
|
+ text-decoration: none;
|
|
|
+ transition: color 0.2s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.site-footer-help-link:hover {
|
|
|
+ color: var(--blue);
|
|
|
+ text-decoration: underline;
|
|
|
+}
|
|
|
+
|
|
|
+@media (max-width: 640px) {
|
|
|
+ .site-footer {
|
|
|
+ padding: 14px 16px;
|
|
|
+ }
|
|
|
+ .site-footer-inner {
|
|
|
+ flex-direction: column;
|
|
|
+ justify-content: center;
|
|
|
+ text-align: center;
|
|
|
+ gap: 6px;
|
|
|
+ font-size: 11px;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+
|