442 lines
17 KiB
SCSS
442 lines
17 KiB
SCSS
/* 像素字体(web 端 BubbledotICG-FinePos 同款,CC BY 4.0)——资源内联为 base64 */
|
||
@font-face {
|
||
font-family: 'BubbledotICG';
|
||
src: url('./assets/fonts/BubbledotICG-FinePos.ttf') format('truetype');
|
||
font-display: swap;
|
||
}
|
||
|
||
/* page 是最顶层根节点,所有页面共用 —— 未来感背景直接铺这里,
|
||
不依赖任何 App 层 DOM(Taro 下 App.render 不会渲染成包裹页面的容器)。 */
|
||
/* page = 微信真正的根节点,背景直接铺这里(Taro 下 App.render 不渲染成包裹容器的 DOM)。
|
||
星点:平铺小格(各自尺寸 + repeat);光晕与底:满屏(100%);逐层 background-size/repeat 匹配。 */
|
||
/* Soft UI 浅色柔彩底色(无动画、无 canvas,真机流畅不遮挡) */
|
||
page {
|
||
background: #f4f6ff;
|
||
color: #3a4672;
|
||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif;
|
||
background-image:
|
||
radial-gradient(64% 42% at 12% 2%, rgba(229, 167, 224, 0.26), transparent 60%),
|
||
radial-gradient(56% 40% at 94% 4%, rgba(158, 225, 236, 0.30), transparent 60%),
|
||
radial-gradient(50% 42% at 84% 100%, rgba(151, 225, 212, 0.22), transparent 60%),
|
||
linear-gradient(165deg, #edf2ff 0%, #f6eefc 40%, #ecf7f6 72%, #eaf4ff 100%);
|
||
background-attachment: fixed;
|
||
}
|
||
|
||
/* 隐藏滚动条:所有页面内容可滚动,但不显示滚动条(含内部横向滚动容器) */
|
||
page::-webkit-scrollbar,
|
||
::-webkit-scrollbar {
|
||
display: none;
|
||
width: 0;
|
||
height: 0;
|
||
-webkit-appearance: none;
|
||
}
|
||
page { -ms-overflow-style: none; scrollbar-width: none; }
|
||
.ev-tabs, .phase-filters, .quiz-body, .sv-opts, .ot-opts { scrollbar-width: none; }
|
||
|
||
/* 页面切换淡入:挂到各页面根容器,切换时淡入,缓解硬切/一瞬空白 */
|
||
.page-in {
|
||
animation: pageIn 0.22s ease both;
|
||
}
|
||
@keyframes pageIn {
|
||
from { opacity: 0; }
|
||
to { opacity: 1; }
|
||
}
|
||
|
||
/* 内容层:底部留白避开固定 tabBar(含首页上凸按钮)。
|
||
用 @supports 把「基础值」与「安全区增强」分成两条独立规则:
|
||
压缩器无法合并去重,即使 env() 在个别基础库不可用,180rpx 基础值仍生效,内容绝不被遮蔽 */
|
||
.app {
|
||
position: relative;
|
||
z-index: 1;
|
||
min-height: 100vh;
|
||
padding-bottom: 180rpx;
|
||
}
|
||
|
||
/* 测评/政策/流程等:标题/进度头部保持在顶部,仅题目/表单卡片垂直居中。整页不滚动 */
|
||
.quiz-center {
|
||
position: relative;
|
||
z-index: 2;
|
||
box-sizing: border-box;
|
||
display: flex;
|
||
flex-direction: column;
|
||
height: 100vh;
|
||
overflow: hidden; /* 内容超出即裁剪,杜绝页面滚动 */
|
||
}
|
||
.quiz-body {
|
||
flex: 1;
|
||
display: flex;
|
||
flex-direction: column;
|
||
justify-content: center;
|
||
min-height: 0;
|
||
}
|
||
|
||
@supports (padding-bottom: env(safe-area-inset-bottom)) {
|
||
.app {
|
||
padding-bottom: calc(180rpx + env(safe-area-inset-bottom));
|
||
}
|
||
}
|
||
|
||
/* 通用卡片(Soft UI:柔白面 + 软阴影 + 大圆角) */
|
||
.card {
|
||
background: rgba(255,255,255,0.55); backdrop-filter: blur(20px) saturate(160%); -webkit-backdrop-filter: blur(20px) saturate(160%);
|
||
border: 1px solid rgba(99, 132, 255, 0.12);
|
||
border-radius: 20px;
|
||
padding: 24px;
|
||
margin-bottom: 16px;
|
||
box-shadow: 0 10rpx 28rpx rgba(59, 79, 125, 0.09);
|
||
backdrop-filter: blur(8px);
|
||
}
|
||
|
||
.card-title {
|
||
font-size: 30px;
|
||
font-weight: 700;
|
||
color: #23315c;
|
||
}
|
||
|
||
.card-desc {
|
||
font-size: 26px;
|
||
color: #6a76a8;
|
||
line-height: 1.6;
|
||
margin-top: 8px;
|
||
}
|
||
|
||
.btn-main {
|
||
background: linear-gradient(135deg, #6b8bff, #8f7bff);
|
||
color: #ffffff;
|
||
border-radius: 999px;
|
||
font-weight: 600;
|
||
font-size: 28px;
|
||
padding: 0 40px;
|
||
line-height: 2.6;
|
||
box-shadow: 0 8rpx 24rpx rgba(98, 132, 255, 0.28);
|
||
}
|
||
|
||
.btn-main::after {
|
||
border: none;
|
||
}
|
||
|
||
.btn-ghost {
|
||
background: rgba(255, 255, 255, 0.55);
|
||
backdrop-filter: blur(20px) saturate(160%);
|
||
-webkit-backdrop-filter: blur(20px) saturate(160%);
|
||
color: #5a6aa3;
|
||
border: 1px solid rgba(99, 132, 255, 0.22);
|
||
border-radius: 999px;
|
||
font-weight: 600;
|
||
font-size: 28px;
|
||
padding: 0 40px;
|
||
line-height: 2.6;
|
||
}
|
||
|
||
.btn-ghost::after {
|
||
border: none;
|
||
}
|
||
|
||
/* 禁用态:微信原生 button[disabled] 浅底浅字会盖掉单类样式(特异度更高),这里显式压回可读配色 */
|
||
.btn-main[disabled], .btn-main.button-disabled,
|
||
.btn-ghost[disabled], .btn-ghost.button-disabled {
|
||
background: rgba(120, 140, 220, 0.14);
|
||
color: #8b97c4;
|
||
border: 1px solid rgba(99, 132, 255, 0.12);
|
||
box-shadow: none;
|
||
}
|
||
|
||
.section-head {
|
||
font-size: 32px;
|
||
font-weight: 700;
|
||
color: #23315c;
|
||
margin: 32px 0 16px;
|
||
}
|
||
|
||
.muted {
|
||
color: #9aa4c6;
|
||
font-size: 24px;
|
||
}
|
||
|
||
/* ============================================================
|
||
单题一屏 · 共享答题组件(OPC 测评 / 政策测评共用)
|
||
============================================================ */
|
||
.ot-quiz-head {
|
||
padding-top: 8px;
|
||
}
|
||
|
||
.ot-quiz-top {
|
||
display: flex;
|
||
align-items: baseline;
|
||
justify-content: space-between;
|
||
}
|
||
.ot-quiz-left {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 10px;
|
||
min-width: 0;
|
||
}
|
||
.ot-back {
|
||
flex-shrink: 0;
|
||
display: inline-flex;
|
||
align-items: center;
|
||
font-size: 22px;
|
||
color: #6284ff;
|
||
background: rgba(99, 132, 255, 0.10);
|
||
border: 1px solid rgba(99, 132, 255, 0.24);
|
||
border-radius: 999px;
|
||
padding: 4px 14px;
|
||
}
|
||
|
||
.ot-quiz-title {
|
||
font-size: 30px;
|
||
font-weight: 700;
|
||
color: #23315c;
|
||
}
|
||
|
||
.ot-quiz-tag {
|
||
margin-left: 14px;
|
||
font-size: 20px;
|
||
font-weight: 600;
|
||
color: #fff;
|
||
background: linear-gradient(135deg, #6b8bff, #8f7bff);
|
||
border-radius: 999px;
|
||
padding: 4px 16px;
|
||
vertical-align: middle;
|
||
}
|
||
|
||
.ot-progress-text {
|
||
font-size: 24px;
|
||
color: #9aa4c6;
|
||
}
|
||
|
||
.ot-progress {
|
||
height: 10px;
|
||
border-radius: 999px;
|
||
background: rgba(99, 132, 255, 0.14);
|
||
margin: 20px 0;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.ot-progress-fill {
|
||
height: 100%;
|
||
border-radius: 999px;
|
||
background: linear-gradient(90deg, #6b8bff, #8f7bff);
|
||
transition: width 0.3s ease;
|
||
}
|
||
|
||
.ot-part {
|
||
display: block;
|
||
font-size: 24px;
|
||
color: #6284ff;
|
||
margin-bottom: 8px;
|
||
}
|
||
|
||
/* 单题卡片下方的操作提示 */
|
||
.ot-hint {
|
||
display: block;
|
||
margin-top: 16px;
|
||
font-size: 22px;
|
||
color: #9aa4c6;
|
||
text-align: center;
|
||
}
|
||
|
||
.ot-qcard {
|
||
background: rgba(255,255,255,0.55); backdrop-filter: blur(20px) saturate(160%); -webkit-backdrop-filter: blur(20px) saturate(160%);
|
||
border: 1px solid rgba(99, 132, 255, 0.12);
|
||
border-radius: 16px;
|
||
padding: 28px 30px;
|
||
margin-bottom: 20px;
|
||
box-shadow: 0 8rpx 24rpx rgba(59, 79, 125, 0.08);
|
||
}
|
||
|
||
.ot-qcard.answered {
|
||
border-color: rgba(98, 132, 255, 0.5);
|
||
}
|
||
|
||
/* 一题一屏:不再包大卡片,题目直接融入页面背景(选项保留玻璃药丸),题目/选项更大 */
|
||
.ot-qcard.one {
|
||
background: transparent;
|
||
backdrop-filter: none;
|
||
-webkit-backdrop-filter: none;
|
||
border: none;
|
||
box-shadow: none;
|
||
border-radius: 0;
|
||
margin-top: 0;
|
||
padding: 12px 8px 0;
|
||
}
|
||
|
||
.ot-qcard.one .ot-qtext {
|
||
font-size: 36px;
|
||
line-height: 1.5;
|
||
margin-bottom: 36px;
|
||
}
|
||
|
||
.ot-qcard.one .ot-opt {
|
||
padding: 26px 26px;
|
||
}
|
||
|
||
.ot-qnum {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
font-size: 22px;
|
||
color: #a3abc9;
|
||
margin-bottom: 12px;
|
||
}
|
||
|
||
.ot-check {
|
||
color: #6284ff;
|
||
font-size: 26px;
|
||
}
|
||
|
||
.ot-qtext {
|
||
display: block;
|
||
font-size: 30px;
|
||
font-weight: 600;
|
||
color: #23315c;
|
||
line-height: 1.5;
|
||
margin-bottom: 20px;
|
||
}
|
||
|
||
.ot-opts {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 12px;
|
||
}
|
||
|
||
.ot-opt {
|
||
display: flex;
|
||
align-items: flex-start;
|
||
gap: 12px;
|
||
background: #f6f8ff;
|
||
border: 1px solid rgba(99, 132, 255, 0.14);
|
||
border-radius: 14px;
|
||
padding: 20px 22px;
|
||
}
|
||
|
||
/* 选中态全站统一:蓝紫渐变 + 白字 */
|
||
.ot-opt.sel {
|
||
border-color: transparent;
|
||
background: linear-gradient(135deg, #6b8bff, #8f7bff);
|
||
box-shadow: 0 8rpx 24rpx rgba(98, 132, 255, 0.28);
|
||
}
|
||
|
||
.ot-opt.sel .opt-text {
|
||
color: #ffffff;
|
||
}
|
||
|
||
.opt-key {
|
||
font-family: 'BubbledotICG', monospace;
|
||
color: #8a94c0;
|
||
font-size: 26px;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.ot-opt.sel .opt-key {
|
||
color: #ffffff;
|
||
}
|
||
|
||
.opt-text {
|
||
font-size: 27px;
|
||
color: #4a5580;
|
||
line-height: 1.55;
|
||
flex: 1;
|
||
}
|
||
|
||
/* 底部导航(上一题 / 进度计数) */
|
||
.ot-nav-one {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
gap: 16px;
|
||
margin: 28px 0 8px;
|
||
}
|
||
|
||
.ot-nav-btn {
|
||
flex-shrink: 0;
|
||
line-height: 2.4;
|
||
padding: 0 28px;
|
||
}
|
||
|
||
.ot-nav-info {
|
||
font-family: 'BubbledotICG', monospace;
|
||
font-size: 26px;
|
||
color: #8e8e8e;
|
||
letter-spacing: 2px;
|
||
}
|
||
|
||
/* 单选无右侧按钮时,占位保持计数居中 */
|
||
.ot-nav-empty {
|
||
width: 110px;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.ot-loading {
|
||
display: block;
|
||
text-align: center;
|
||
font-size: 26px;
|
||
color: #ffd28a;
|
||
margin-top: 24px;
|
||
}
|
||
|
||
/* 通用线性图标(CSS mask SVG,仿 lucide;禁用 emoji 图标) */
|
||
.ic {
|
||
display: inline-block; width: 36rpx; height: 36rpx; background-color: currentColor;
|
||
-webkit-mask-repeat: no-repeat; -webkit-mask-position: center; -webkit-mask-size: contain;
|
||
mask-repeat: no-repeat; mask-position: center; mask-size: contain;
|
||
}
|
||
.ic-play { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M5 3l14 9-14 9V3z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M5 3l14 9-14 9V3z'/%3E%3C/svg%3E"); }
|
||
.ic-heart { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.6l-1-1a5.5 5.5 0 0 0-7.8 7.8l1 1L12 21l7.8-7.6 1-1a5.5 5.5 0 0 0 0-7.8z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.6l-1-1a5.5 5.5 0 0 0-7.8 7.8l1 1L12 21l7.8-7.6 1-1a5.5 5.5 0 0 0 0-7.8z'/%3E%3C/svg%3E"); }
|
||
.ic-check { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E"); }
|
||
.ic-lock { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Crect x='4' y='11' width='16' height='9' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Crect x='4' y='11' width='16' height='9' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E"); }
|
||
.ic-arrow-left { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E"); }
|
||
.ic-thumb { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M7 10v12M15 5.9s0-1-.5-2a1.5 1.5 0 0 0-2.8 1C12.4 6.6 11 10 11 10h6a2 2 0 0 1 2 2.5l-1.4 5.6a2 2 0 0 1-2 1.5H7M15 6l2-1.5a1.5 1.5 0 0 1 2.7 1.3L18 13M7 22H4a2 2 0 0 1-2-2V12a2 2 0 0 1 2-2h3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M7 10v12M15 5.9s0-1-.5-2a1.5 1.5 0 0 0-2.8 1C12.4 6.6 11 10 11 10h6a2 2 0 0 1 2 2.5l-1.4 5.6a2 2 0 0 1-2 1.5H7M15 6l2-1.5a1.5 1.5 0 0 1 2.7 1.3L18 13M7 22H4a2 2 0 0 1-2-2V12a2 2 0 0 1 2-2h3'/%3E%3C/svg%3E"); }
|
||
.ic-share { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7M16 6l-4-4-4 4M12 2v13'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7M16 6l-4-4-4 4M12 2v13'/%3E%3C/svg%3E"); }
|
||
.ic-cmt { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E"); }
|
||
|
||
/* ============================================================
|
||
Soft UI 全局降级:表单控件/选项统一柔白面 + 深蓝灰文本(覆盖各页暗色控件)
|
||
============================================================ */
|
||
.input, .picker, .ot-opt, .sv-opt, .sv-textarea, .sv-lk, .ed-form,
|
||
.ca-textarea, .ca-code .input, .pt-picker, .pt-textarea, .pa-textarea, .pa-picker, .step, .summary, .cell {
|
||
background: rgba(255, 255, 255, 0.55) !important;
|
||
backdrop-filter: blur(20px) saturate(160%);
|
||
-webkit-backdrop-filter: blur(20px) saturate(160%);
|
||
border-color: rgba(99, 132, 255, 0.16) !important;
|
||
color: #3a4672 !important;
|
||
}
|
||
|
||
/* 发布者徽章图标(官方/园区/OPC) */
|
||
.ic-shield { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='M12 3l8 3v5c0 5-3.5 8-8 10-4.5-2-8-5-8-10V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='M12 3l8 3v5c0 5-3.5 8-8 10-4.5-2-8-5-8-10V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E"); }
|
||
.ic-landmark { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='M3 10l9-6 9 6'/%3E%3Cpath d='M5 10v9M9.5 10v9M14.5 10v9M19 10v9M3 20h18'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='M3 10l9-6 9 6'/%3E%3Cpath d='M5 10v9M9.5 10v9M14.5 10v9M19 10v9M3 20h18'/%3E%3C/svg%3E"); }
|
||
.ic-users { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20a6.5 6.5 0 0 1 13 0'/%3E%3Cpath d='M15.5 5a3.5 3.5 0 0 1 0 6.6'/%3E%3Cpath d='M17.5 14.4a6.5 6.5 0 0 1 4 5.6'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20a6.5 6.5 0 0 1 13 0'/%3E%3Cpath d='M15.5 5a3.5 3.5 0 0 1 0 6.6'/%3E%3Cpath d='M17.5 14.4a6.5 6.5 0 0 1 4 5.6'/%3E%3C/svg%3E"); }
|
||
|
||
/* ============ 统一固定标题区(像素字 kicker + 彩虹渐变标题 + 像素字注脚) ============ */
|
||
.page-navbar {
|
||
position: fixed; top: 0; left: 0; right: 0; z-index: 100;
|
||
padding: 0 28rpx; /* 标题区上下零冗余:高度 = 安全区 + 三行文字,占位实测自然贴合 */
|
||
background: rgba(247, 249, 255, 0.88);
|
||
backdrop-filter: blur(20px) saturate(160%);
|
||
-webkit-backdrop-filter: blur(20px) saturate(160%);
|
||
}
|
||
.page-navbar-col { display: flex; flex-direction: column; }
|
||
.page-navbar-no { font-family: 'BubbledotICG', monospace; color: #a3abc9; font-size: 26rpx; letter-spacing: 2rpx; line-height: 1.15; }
|
||
.page-navbar-titlerow { display: flex; align-items: center; gap: 16rpx; line-height: 1.15; }
|
||
/* 标题区返回按钮:玻璃圆形 + 线性箭头(沉浸式导航下唯一返回入口) */
|
||
.page-navbar-back {
|
||
width: 56rpx; height: 56rpx; border-radius: 50%;
|
||
display: flex; align-items: center; justify-content: center;
|
||
background: rgba(255, 255, 255, 0.55);
|
||
backdrop-filter: blur(20rpx) saturate(160%);
|
||
-webkit-backdrop-filter: blur(20rpx) saturate(160%);
|
||
border: 1px solid rgba(99, 132, 255, 0.22);
|
||
color: #5a6aa3;
|
||
box-shadow: 0 4rpx 14rpx rgba(59, 79, 125, 0.10);
|
||
flex-shrink: 0;
|
||
}
|
||
.page-navbar-back .ic { width: 30rpx; height: 30rpx; }
|
||
.page-navbar-back.pressed { opacity: 0.65; }
|
||
.page-navbar-title {
|
||
font-size: 40rpx; font-weight: 800; letter-spacing: -0.5rpx; line-height: 1.15;
|
||
background: linear-gradient(120deg, #8fc3ff 0%, #a8a0ff 45%, #e0a0ff 80%, #7fe0ff 100%);
|
||
-webkit-background-clip: text; background-clip: text; color: transparent;
|
||
}
|
||
.page-navbar-sub { font-size: 24rpx; color: #5a6aa3; }
|
||
.page-navbar-en { font-family: 'BubbledotICG', monospace; color: #5b5b5b; font-size: 24rpx; letter-spacing: 2rpx; line-height: 1.15; padding-bottom: 12rpx; }
|