/* Shared VDVL finish: soft surfaces and restrained tactile controls. */
:root{--vdvl-ink:#173b38;--vdvl-teal:#17695c;--vdvl-edge:#dbe6e2;--vdvl-shadow:0 5px 0 #d7e2dd,0 10px 24px #183c3510}
body{background:#f4f7f5;background-image:radial-gradient(ellipse at 15% 0%,#e4eeea80,transparent 55%);color:var(--vdvl-ink);-webkit-font-smoothing:antialiased}
h1,h2,h3{text-wrap:balance}p{ text-wrap:pretty }
.choice,.sign-choice{background:linear-gradient(155deg,#fff,#f9fbfa);border-color:var(--vdvl-edge);box-shadow:var(--vdvl-shadow);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.choice:hover,.sign-choice:hover{border-color:#a7c5ba;box-shadow:0 6px 0 #cfdfd6,0 14px 26px #183c3516;transform:translateY(-2px)}
.choice:active,.sign-choice:active{transform:translateY(3px);box-shadow:0 1px 0 #cfdfd6,0 3px 8px #183c3510}
.choice-number,.mini-book,.option-letter{box-shadow:inset 0 1px 0 #ffffffb3,0 2px 3px #193b3410}
.primary,.game-primary,.scan-action,.licence-cta,.licence-start-button,.masthead-whatsapp,.whatsapp-top,button[type=submit],.question-page~.actions button,.question-action{box-shadow:inset 0 1px 0 #ffffff30,0 4px 0 #103e2f,0 7px 15px #143e3518;transition:transform .15s ease,box-shadow .15s ease}
.primary:active,.game-primary:active,.scan-action:active,.licence-cta:active,.masthead-whatsapp:active,.whatsapp-top:active,button[type=submit]:active,.question-action:active{transform:translateY(3px);box-shadow:inset 0 1px 0 #ffffff30,0 1px 0 #103e2f}
.question-action{border-color:#cbc5e2;box-shadow:inset 0 1px 0 #fff,0 4px 0 #d9d2e9,0 8px 20px #5040780d;background:linear-gradient(135deg,#f5f1ff,#fcfbff)}
.sign-game,.pretest-card,.start-step,.checker{border-color:var(--vdvl-edge);box-shadow:0 8px 28px #183c350a}
input:not([type=radio]):not([type=checkbox]),select,textarea{border-radius:12px}
.game-option{box-shadow:0 3px 0 #dce5df;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.game-option:not(:disabled):active{transform:translateY(2px);box-shadow:0 1px 0 #dce5df}
.game-option.is-correct{box-shadow:0 3px 0 #b2d3b9}.game-option.is-wrong{box-shadow:0 3px 0 #e3c5b8}
@media(hover:none){.choice:hover,.sign-choice:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.choice,.sign-choice,.game-option,.primary,.game-primary,.question-action{transition:none}}
