ui/usepromptpanel.razor.scss
// ⚠️ STYLED BY CLASS, NOT BY A BARE `root` SELECTOR.
//
// This file used `root { … }`, which every other panel here avoids — they all
// put a class on <root> and style that (.lobby, .hud, .devmenu). The rule never
// applied, so `pointer-events: none` did nothing and a full-screen interactive
// panel sat over the lobby swallowing every click.
.use-prompt
{
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
// Never eat clicks. Nothing in here is interactive — it is a caption.
pointer-events: none;
.prompt
{
// ⚠️ POSITIONED WITH `bottom`, NOT PADDING.
//
// cl_target.lua draws at `sch - 280*pscale` — ~26% up from the bottom at
// the 1080p it was written against. Two wrong turns getting here:
// 1. Copying the literal 280px put the prompt at the TOP of a 392px
// editor viewport, because 280 of 392 is most of the screen.
// 2. `padding-bottom: 26%` did not fix it — percentage padding
// resolves against the container's WIDTH, not its height.
// `bottom` resolves against height, which is the axis we actually mean.
position: absolute;
bottom: 26%;
left: 0px;
width: 100%;
align-items: center;
justify-content: center;
flex-direction: row;
pointer-events: none;
// ⚠️ Inter, not Poppins. DevMenu.razor.scss already carries this warning:
// Poppins appears in ~60 shipped .scss files but has no font file in the
// s&box install, and a missing font renders every label as a grey block.
font-family: Inter;
font-size: 22px;
font-weight: 500;
color: white;
text-shadow: 0px 2px 4px rgba( 0, 0, 0, 0.9 );
.box
{
background-color: rgba( 0, 0, 0, 0.45 );
padding: 6px 18px;
border-radius: 3px;
pointer-events: none;
}
}
// A refusal is not an offer — "you must turn on the electricity first"
// should not look like something you can press E on.
.prompt.refusal .box
{
color: #ffcf5c;
}
}
// ═══ BASALT (`HudTheme`) — the map's face, Cinzel on the prompt ═══
//
// *"i want the font for this map to affect … all hud messages that appear on screen"* (2026-09-27). This panel sits inside the survival HUD, whose
// root wears the theme's class; its prompt names Inter itself, so it is named here.
// ⛔ ON INTER'S LINE BOX, so no row grows taller: 0.898 of Cinzel's own line, which is Inter's 1.211 of the size. See
// `.round` in SurvivalHud.razor.scss for why it is not 1.211. It is wider on mixed-case text, which it sets in small capitals. Cinzel-Bold is the one face shipped,
// so every weight draws bold.
.theme-basalt .use-prompt .prompt
{
font-family: Cinzel;
line-height: 0.898;
}