.lucky-form { border: 1px solid #69718a; border-radius: 12px; padding: 1.25rem; margin: 1.5rem 0; }
.lucky-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.lucky-form label { display: block; margin-bottom: .4rem; font-weight: 600; }
.lucky-form input { width: 100%; min-width: 0; box-sizing: border-box; padding: .75rem; color: #f5f2e9; background: #101421; border: 1px solid #79819b; border-radius: 6px; font: inherit; color-scheme: dark; }
.lucky-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.lucky-actions button { padding: .7rem 1rem; border: 1px solid #cbb783; border-radius: 6px; color: #f5f2e9; background: #202637; font: inherit; cursor: pointer; }
.lucky-actions button[type=submit] { color: #101421; background: #cbb783; }
.lucky-form :focus-visible { outline: 2px solid #f0d696; outline-offset: 3px; }
#lucky-error { color: #ffb8b8; }
.lucky-result { border: 1px solid #cbb783; padding: 1.25rem; border-radius: 12px; margin-bottom: 1.5rem; }
#lucky-number { display: inline-block; font-size: 3rem; line-height: 1.2; color: #eed9a1; font-weight: 700; margin: .3rem 0; }
.lucky-form[hidden], .lucky-result[hidden] { display: none !important; }
@media (max-width: 480px) { .lucky-fields { grid-template-columns: 1fr; } }
#lucky-card-panel[hidden] { display:none !important; }
#lucky-card-canvas { display:block; width:100%; max-width:430px; height:auto; margin:auto; }
#lucky-card-panel figure { margin:1rem 0; }
#lucky-card-panel figcaption { margin-top:.7rem; }
#lucky-card-format { max-width:100%; font:inherit; padding:.6rem; }
#lucky-use-profile { margin-bottom:1rem; }
