a, a:link, a:visited, a:hover, a:active { text-decoration: none; color: #fff; }
body { height: 100%; width: 100%; margin: 0; border: 0; font-size: 14pt; color: #333; }
.borderd > div { border: 1px solid #E5E7EB; border-radius: 5px; padding: 10px; }
.borderd a { color: #333; font-size: 12px; }
.borderd img { width: 12px; vertical-align: middle; margin-right: 4px; }
.dh1 a { color: #6A7282; font-size: 14px; flex: 1; }
.dh1 .on { border-bottom: 2px solid #CC0000; color: #CC0000; }
.header { background: #CC0000; width: 100%; height: 100px; color: #FFDF20; display: flex; align-items: center; }
.header img { height: 50px; padding: 10px; }
.footer { background: #CC0000; width: 100%; height: 150px; color: #fff; display: flex; align-items: center; position: fixed; left: 0; bottom: 0; text-align: center; font-size: 14px; }
.footer p { flex: 1; margin: 0; }
.footer img { max-height: 48px; }
.pad { padding: 10px; padding-bottom: 170px; }
.plan-head { background: #CC0000; font-size: 18px; color: #fff; border: 0 !important; }
.plan-body { font-size: 14px; color: #333; border: 0 !important; }
.plan-body p { margin: 0 0 12px; line-height: 1.6; }
.ai-wrap { min-height: 100vh; background-repeat: no-repeat; background-size: 100% 100%; background-color: #f5f8ff; }
.ai-card { background: rgba(255,255,255,0.7); width: 90%; margin: 0 auto; border-radius: 25px; }
.gradient { font-size: 24px; font-weight: bold; background-image: linear-gradient(to right, #007AFF, #3FCFFF); background-clip: text; -webkit-background-clip: text; color: transparent; text-align: center; }
.ai-lines p { margin: 0; padding: 10px; font-size: 12px; }
.ai-lines .k { color: #005EFF; }
#loadingOverlay { position: fixed; inset: 0; display: none; background: rgba(255,255,255,0.85); z-index: 9999; }
#loadingOverlay.is-visible { display: flex; align-items: center; justify-content: center; }
#loadingBox { display: flex; flex-direction: column; align-items: center; padding: 18px 22px; border-radius: 14px; background: rgba(255,255,255,0.92); box-shadow: 0 8px 24px rgba(0,0,0,0.12); color: #333; font-size: 14px; }
#loadingBoxText { margin-top: 12px; }
#loadingSpinner { width: 34px; height: 34px; border-radius: 50%; border: 3px solid rgba(0,122,255,0.2); border-top-color: #007AFF; animation: spin .9s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.error { padding: 24px; color: #c00; }
