:root{
/* Elevation — light comes from above through water; shadows are blue, never black-neutral */
--shadow-none:none;
--shadow-sm:0 1px 2px rgba(3,6,12,0.30),0 2px 8px rgba(3,6,12,0.20);
--shadow-md:0 2px 4px rgba(3,6,12,0.28),0 12px 28px -6px rgba(3,6,12,0.40);
--shadow-lg:0 4px 8px rgba(3,6,12,0.30),0 32px 64px -16px rgba(3,6,12,0.55);
--shadow-glow:0 0 0 1px rgba(198,220,233,0.10),0 24px 80px -24px rgba(46,119,171,0.55);
/* Inner light — the top edge catch on frosted glass */
--inset-rim:inset 0 1px 0 rgba(255,255,255,0.16); /* @kind shadow */
--inset-rim-strong:inset 0 1px 0 rgba(255,255,255,0.28),inset 0 -1px 0 rgba(3,6,12,0.30); /* @kind shadow */

/* Frosted glass recipes */
--blur-frost:blur(18px) saturate(140%); /* @kind other */
--blur-heavy:blur(40px) saturate(120%); /* @kind other */
--blur-veil:blur(8px); /* @kind other */
--glass-card:linear-gradient(160deg,rgba(255,255,255,0.10),rgba(255,255,255,0.02)); /* @kind color */
--glass-light:linear-gradient(160deg,rgba(255,255,255,0.85),rgba(238,244,248,0.55)); /* @kind color */

/* Atmospheres — full-bleed gradient fields */
--grad-abyss:radial-gradient(120% 90% at 50% -10%,#153A5C 0%,#0A1B31 42%,#03060C 100%); /* @kind color */
--grad-surface:linear-gradient(180deg,#DEEAF2 0%,#7FB4D6 55%,#153A5C 100%); /* @kind color */
--grad-shaft:radial-gradient(60% 70% at 50% 0%,rgba(198,220,233,0.55) 0%,rgba(79,150,198,0.18) 40%,transparent 72%); /* @kind color */
--grad-flare:radial-gradient(50% 60% at 70% 20%,rgba(232,184,122,0.28),transparent 70%); /* @kind color */
--grad-rime:linear-gradient(180deg,#F9FCFD 0%,#DEEAF2 100%); /* @kind color */
/* Protection gradient — under text over imagery */
--grad-protect:linear-gradient(0deg,rgba(3,6,12,0.86) 0%,rgba(3,6,12,0.50) 38%,transparent 100%); /* @kind color */

/* Grain — always present, never loud */
--grain-url:url("../assets/textures/grain.png"); /* @kind other */
--grain-opacity:0.055; /* @kind other */
--grain-opacity-strong:0.10; /* @kind other */
--grain-size:180px; /* @kind spacing */
}
