Files
2026-08-11 15:59:31 +08:00

259 lines
6.7 KiB
CSS

.mengsan-overlay-shuying {
position: fixed;
inset: 0;
z-index: 80;
display: flex;
align-items: center;
justify-content: center;
box-sizing: border-box;
padding: 18px;
background: radial-gradient(circle at 50% 20%, rgba(68, 62, 83, 0.72), rgba(8, 10, 15, 0.96));
color: #f6ead0;
font-family: "Microsoft YaHei", sans-serif;
}
.mengsan-overlay-shuying *,
.mengsan-overlay-shuying *::before,
.mengsan-overlay-shuying *::after {
box-sizing: border-box;
float: none !important;
writing-mode: horizontal-tb !important;
-webkit-writing-mode: horizontal-tb !important;
text-orientation: mixed !important;
letter-spacing: normal;
}
.mengsan-panel-shuying {
position: relative !important;
left: auto !important;
top: auto !important;
right: auto !important;
bottom: auto !important;
display: flex !important;
flex-direction: column !important;
flex: none !important;
width: min(720px, 94vw);
height: auto !important;
min-height: 160px;
max-height: 92vh;
overflow: auto;
box-sizing: border-box;
padding: 22px;
border: 1px solid rgba(232, 202, 140, 0.55);
border-radius: 14px;
background: linear-gradient(145deg, rgba(31, 28, 38, 0.98), rgba(17, 19, 26, 0.98));
box-shadow: 0 20px 70px rgba(0, 0, 0, 0.58), inset 0 1px rgba(255, 255, 255, 0.08);
}
.mengsan-panel-shuying > .mengsan-title-shuying,
.mengsan-panel-shuying > .mengsan-description-shuying,
.mengsan-panel-shuying > .mengsan-choice-list-shuying,
.mengsan-panel-shuying > .mengsan-map-status-shuying,
.mengsan-panel-shuying > .mengsan-map-shuying,
.mengsan-choice-list-shuying > .mengsan-choice-shuying,
.mengsan-choice-shuying > .mengsan-choice-name-shuying,
.mengsan-choice-shuying > .mengsan-choice-description-shuying {
position: relative !important;
left: auto !important;
top: auto !important;
right: auto !important;
bottom: auto !important;
transform: none !important;
}
.mengsan-title-shuying {
display: block !important;
flex: none !important;
width: 100% !important;
height: auto !important;
margin-bottom: 14px;
color: #f2d28e;
font-size: 30px;
font-weight: 700;
text-align: center;
letter-spacing: 4px;
line-height: 1.35;
white-space: normal !important;
}
.mengsan-description-shuying,
.mengsan-map-status-shuying {
display: block !important;
flex: none !important;
width: 100% !important;
height: auto !important;
margin-bottom: 14px;
color: rgba(255, 255, 255, 0.78);
text-align: center;
line-height: 1.6;
}
.mengsan-choice-list-shuying {
display: grid;
flex: none !important;
width: 100% !important;
height: auto !important;
gap: 12px;
}
.mengsan-choice-shuying {
display: block !important;
width: 100% !important;
height: auto !important;
min-height: 64px;
padding: 14px 16px;
border: 1px solid rgba(242, 210, 142, 0.34);
border-radius: 9px;
background: rgba(255, 255, 255, 0.055);
cursor: pointer;
transition: transform 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}
.mengsan-choice-shuying:hover {
transform: translateY(-2px);
border-color: rgba(242, 210, 142, 0.8);
background: rgba(242, 210, 142, 0.12);
}
.mengsan-choice-shuying.disabled {
cursor: default;
opacity: 0.35;
filter: grayscale(1);
}
.mengsan-choice-name-shuying {
display: block !important;
width: 100% !important;
height: auto !important;
color: #f6dca5;
font-size: 18px;
}
.mengsan-choice-description-shuying {
display: block !important;
width: 100% !important;
height: auto !important;
margin-top: 5px;
color: rgba(255, 255, 255, 0.65);
font-size: 13px;
}
.mengsan-map-panel-shuying {
position: absolute !important;
inset: 0 !important;
width: 100% !important;
height: 100% !important;
min-width: 100%;
min-height: 100%;
max-width: none !important;
max-height: none !important;
padding: clamp(12px, 2vw, 24px);
border: 0;
border-radius: 0;
background: transparent;
box-shadow: none;
overflow: hidden;
}
.mengsan-map-overlay-shuying {
padding: 0 !important;
background:
radial-gradient(circle at 50% 18%, rgba(67, 59, 82, 0.82), rgba(9, 10, 16, 0.97)),
repeating-linear-gradient(12deg, rgba(255, 255, 255, 0.018) 0 2px, transparent 2px 12px);
}
.mengsan-map-panel-shuying > .mengsan-title-shuying {
margin-bottom: 6px;
font-size: clamp(24px, 3vw, 36px);
}
.mengsan-map-panel-shuying > .mengsan-map-status-shuying {
margin-bottom: 10px;
}
.mengsan-map-shuying {
position: relative;
display: block !important;
flex: 1 1 auto !important;
width: 100%;
height: auto !important;
min-height: 0;
overflow: hidden;
border-radius: 0;
background: transparent;
}
.mengsan-lines-shuying {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
overflow: visible;
pointer-events: none;
}
.mengsan-lines-shuying line {
vector-effect: non-scaling-stroke;
stroke: rgba(232, 219, 190, 0.68);
stroke-width: 2;
stroke-linecap: round;
stroke-dasharray: 6 5;
}
.mengsan-lines-shuying line.completed {
stroke: rgba(243, 207, 128, 0.95);
}
.mengsan-lines-shuying line.dynamic {
stroke: rgba(118, 205, 255, 0.95);
stroke-dasharray: 3 4;
}
.mengsan-node-shuying {
position: absolute;
width: 66px;
height: 40px;
transform: translate(-50%, -50%);
display: flex;
align-items: center;
justify-content: center;
box-sizing: border-box;
border: 2px solid var(--node-color);
border-radius: 50%;
background: radial-gradient(circle at 38% 28%, rgba(255, 255, 255, 0.2), transparent 42%), var(--node-color);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.42);
color: #fff4df;
font-size: 12px;
text-align: center;
user-select: none;
}
.mengsan-node-shuying.selectable {
cursor: pointer;
animation: mengsan-node-pulse-shuying 1.6s infinite;
}
.mengsan-node-shuying.locked {
opacity: 0.45;
filter: grayscale(0.65);
}
.mengsan-node-shuying.completed {
opacity: 0.72;
box-shadow: 0 0 0 3px rgba(244, 211, 139, 0.3);
}
@keyframes mengsan-node-pulse-shuying {
0%, 100% { box-shadow: 0 0 0 0 rgba(242, 207, 132, 0.18), 0 5px 15px rgba(0, 0, 0, 0.42); }
50% { box-shadow: 0 0 0 8px rgba(242, 207, 132, 0), 0 5px 18px rgba(0, 0, 0, 0.55); }
}
@media (max-width: 600px) {
.mengsan-overlay-shuying { padding: 7px; }
.mengsan-panel-shuying { padding: 14px; }
.mengsan-title-shuying { font-size: 24px; }
.mengsan-map-panel-shuying { padding: 8px; }
.mengsan-map-shuying { min-height: 0; }
.mengsan-node-shuying { width: 54px; height: 36px; font-size: 11px; }
}