#app{margin:2rem auto;padding:2rem;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,0.3);text-align:center}#app figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:1.5rem}#app figcaption{font-size:.95rem;line-height:1.5;max-width:90%}#app select{padding:.6rem 1rem;font-size:1rem;border:0;border-radius:8px;min-width:140px;cursor:pointer}#app button{padding:.6rem 1.2rem;font-size:1rem;font-weight:bold;border:0;border-radius:8px;cursor:pointer;transition:transform .2s ease;min-width:110px}#app button:not([disabled]):hover{transform:translateY(-1px)}#app button:disabled{background:#333;color:#666;cursor:not-allowed;transform:none;box-shadow:none}.words{display:flex;flex-direction:column;gap:2rem;width:100%;max-width:480px;margin:0 auto}.letters-row{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;padding:.25rem 0}.letter{width:48px;height:48px;font-size:1.5rem;display:flex;align-items:center;justify-content:center;border:2px solid #333;border-radius:8px;text-transform:uppercase;flex-shrink:0}#app .letter-correct{background:#3a7d5f;font-weight:bold}#app .letter-includes{background:#5d3fd3;font-style:italic}#guess-input{display:flex;gap:.75rem;justify-content:center;margin:.5rem;flex-wrap:wrap;flex-direction:column}@keyframes pulse-border{0%{border-color:#ccc;box-shadow:0 0 0 0 rgba(59,130,246,0)}50%{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1)}100%{border-color:#ccc;box-shadow:0 0 0 0 rgba(59,130,246,0)}}#guess-input input:placeholder-shown:not(:focus){animation:pulse-border 2s infinite ease-in-out}#guess-input input{padding:.75rem 1rem;font-size:1.1rem;font-weight:bold;border:4px solid #333;border-radius:8px;text-align:center;text-transform:uppercase;width:100%;max-width:90%;transition:all .2s ease}#guess-input input:focus{outline:0;box-shadow:0 0 0 3px rgba(15,52,96,0.3)}#guess-input button{padding:.75rem 1.5rem;font-weight:bold;min-width:100px}@media(max-width:480px){#app{padding:0;margin:0}.letter{width:40px;height:40px;font-size:1.3rem}#guess-input input{max-width:90%}#guess-input{gap:.5rem}}