game/2d/ui/mainmenututorial.razor.scss
MainMenuTutorial
root {
position: absolute;
top: 0; left: 0; right: 0; bottom: 0;
pointer-events: none;
z-index: 200;
overflow: visible;
}
/* ── Dim layer ── */
.tut-dim {
position: absolute;
top: 0; left: 0; right: 0; bottom: 0;
background-color: rgba(0, 0, 0, 0.55);
pointer-events: none;
}
/* ── Highlight ── */
.tut-highlight {
position: absolute;
border: 2px solid rgba(167, 139, 250, 0.90);
border-radius: 12px;
box-shadow: 0 0 0 4px rgba(139,92,246,0.25), 0 0 20px rgba(139,92,246,0.40);
pointer-events: none;
animation: tut-pulse 1.2s ease-in-out infinite alternate;
z-index: 92;
}
@keyframes tut-pulse {
0% { border-color: rgba(167,139,250,0.60); box-shadow: 0 0 0 4px rgba(139,92,246,0.15), 0 0 12px rgba(139,92,246,0.25); }
100% { border-color: rgba(167,139,250,1.00); box-shadow: 0 0 0 6px rgba(139,92,246,0.35), 0 0 28px rgba(139,92,246,0.55); }
}
/* ── Instruction box ── */
.tut-box {
position: absolute;
width: 380px;
background-color: rgba(13, 8, 32, 0.97);
border: 1.5px solid rgba(139, 92, 246, 0.55);
border-radius: 18px;
padding: 22px 24px 18px;
display: flex;
flex-direction: column;
gap: 12px;
pointer-events: all;
z-index: 95;
animation: tut-box-in 0.3s cubic-bezier(0.22,1,0.36,1) both;
}
@keyframes tut-box-in {
0% { opacity: 0; transform: scale(0.92) translateY(8px); }
100% { opacity: 1; transform: scale(1.0) translateY(0px); }
}
.tut-step-count {
font-size: 11px;
font-weight: 700;
color: rgba(167,139,250,0.50);
letter-spacing: 0.15em;
text-transform: uppercase;
}
.tut-title {
font-size: 22px;
font-weight: 900;
color: white;
letter-spacing: 0.02em;
}
.tut-text {
font-size: 15px;
font-weight: 600;
color: rgba(255,255,255,0.75);
}
.tut-action-hint {
font-size: 13px;
font-weight: 800;
color: #a78bfa;
background-color: rgba(139,92,246,0.12);
border: 1px solid rgba(139,92,246,0.30);
border-radius: 8px;
padding: 8px 12px;
letter-spacing: 0.04em;
animation: tut-hint-pulse 1.0s ease-in-out infinite alternate;
}
@keyframes tut-hint-pulse {
0% { color: rgba(167,139,250,0.70); }
100% { color: rgba(167,139,250,1.00); }
}
.tut-btn-next {
background-color: #7c3aed;
border: 1.5px solid #a78bfa;
border-radius: 10px;
color: white;
font-size: 15px;
font-weight: 800;
padding: 10px 20px;
cursor: pointer;
align-self: flex-start;
pointer-events: all;
}
.tut-btn-next:hover {
background-color: #6d28d9;
}
.tut-btn-skip {
background-color: transparent;
border: none;
color: rgba(255,255,255,0.25);
font-size: 12px;
font-weight: 600;
cursor: pointer;
align-self: flex-start;
padding: 0;
pointer-events: all;
}
.tut-btn-skip:hover {
color: rgba(255,255,255,0.50);
}
/* ── Debug card ── */
.tut-debug-card {
position: absolute;
top: 10px;
left: 10px;
background-color: rgba(0, 0, 0, 0.85);
border: 1px solid rgba(255, 255, 0, 0.5);
border-radius: 8px;
padding: 10px 14px;
display: flex;
flex-direction: column;
gap: 6px;
pointer-events: all;
z-index: 300;
min-width: 220px;
}
.tut-debug-title {
font-size: 11px;
font-weight: 900;
color: rgba(255, 255, 0, 0.8);
letter-spacing: 0.1em;
text-transform: uppercase;
margin-bottom: 4px;
}
.tut-debug-row {
display: flex;
flex-direction: row;
align-items: center;
gap: 6px;
font-size: 12px;
font-weight: 700;
color: white;
}
.tut-debug-row span {
flex: 1;
color: rgba(255,255,255,0.8);
font-size: 11px;
}
.tut-debug-btn {
background-color: rgba(255,255,255,0.12);
border: 1px solid rgba(255,255,255,0.25);
border-radius: 4px;
color: white;
font-size: 12px;
font-weight: 900;
padding: 2px 8px;
cursor: pointer;
pointer-events: all;
}
.tut-debug-btn:hover {
background-color: rgba(255,255,0,0.2);
}
.tut-debug-log {
background-color: rgba(255,255,0,0.15);
border: 1px solid rgba(255,255,0,0.4);
border-radius: 6px;
color: rgba(255,255,0,0.9);
font-size: 11px;
font-weight: 800;
padding: 5px 10px;
cursor: pointer;
pointer-events: all;
margin-top: 4px;
}