.crossword-container{width:100%;max-width:600px;margin:0 auto;padding:0 1rem;box-sizing:border-box}.crossword-grid{display:grid;gap:0;background:#333;padding:8px;border-radius:16px;margin:1.5rem auto 2rem;width:fit-content;max-width:100%;box-sizing:border-box;box-shadow:0 4px 12px #0000001a;overflow:hidden;border:2px solid #333}.crossword-row{display:contents}.crossword-cell{width:28px;height:28px;min-width:28px;min-height:28px;max-width:28px;max-height:28px;position:relative;background:#fff;border:1px solid #333;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;box-sizing:border-box;flex-shrink:0}.crossword-cell.black{background:#000;border-color:#000}.crossword-cell.red{background:#ffebee;border-color:#f44336}.crossword-cell.red .cell-input{color:#d32f2f;font-weight:700}.cell-number{position:absolute;top:2px;left:3px;font-size:.7rem;font-weight:700;color:#333;z-index:1}.cell-input{width:100%;height:100%;border:none;background:transparent;text-align:center;font-size:1.2rem;font-weight:700;text-transform:uppercase;color:#333;padding:0;font-size:16px;-webkit-appearance:none;appearance:none;touch-action:manipulation}.cell-input:focus{outline:2px solid #ff6b9d;outline-offset:-2px;background:#fff9f9}@supports (-webkit-touch-callout: none){.cell-input{font-size:16px!important}}.crossword-clues{background:#ffffffe6;padding:1.5rem;border-radius:12px;margin-bottom:1.5rem}.clues-section{margin-bottom:1rem}.clues-section:last-child{margin-bottom:0}.clues-section h3{margin:0 0 .5rem;color:#ff6b9d;font-size:1.1rem}.clues-section ul{list-style:none;padding:0;margin:0}.clues-section li{margin-bottom:.5rem;line-height:1.5}.crossword-success{text-align:center;padding:1rem;margin-top:1rem;border-radius:12px;background:#4caf5033;color:#2e7d32}.overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.overlay-content{background:#fff;padding:2rem;border-radius:16px;text-align:center;max-width:90%;box-shadow:0 10px 40px #0000004d}.overlay-content h2{margin:0 0 1rem;color:#ff6b9d}.red-letters-display{font-size:2rem;font-weight:700;color:#d32f2f;margin:1rem 0;letter-spacing:.5rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:600px){.crossword-container{padding:0 .25rem;max-width:100%}.crossword-grid{padding:3px;border-radius:12px;margin:1rem auto 1.5rem;gap:0;max-width:100%;box-sizing:border-box;width:fit-content;border:1px solid #333}.crossword-cell{width:18px;height:18px;min-width:18px;min-height:18px;max-width:18px;max-height:18px;flex-shrink:0}.cell-input{font-size:.85rem}.cell-number{font-size:.55rem;top:1px;left:2px}.red-letters-display{font-size:1.5rem;letter-spacing:.3rem}}.wordle-container{width:100%;max-width:100%;margin:0 auto}.wordle-grid{display:flex;flex-direction:column;gap:8px;margin-bottom:2rem}.wordle-row{display:flex;gap:8px;justify-content:center}.wordle-cell{width:48px;height:48px;border:2px solid #ddd;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;background:#fff;color:#333;transition:all .3s ease;touch-action:manipulation}.wordle-cell.current{border-color:#ff6b9d;box-shadow:0 0 0 3px #ff6b9d33}.wordle-cell.correct{background:#4caf50;color:#fff;border-color:#4caf50}.wordle-cell.present{background:#ffc107;color:#fff;border-color:#ffc107}.wordle-cell.absent{background:#9e9e9e;color:#fff;border-color:#9e9e9e}.wordle-success,.wordle-fail{text-align:center;padding:1rem;margin:1rem 0;border-radius:12px;background:#ffffffe6}.wordle-success{background:#4caf5033;color:#2e7d32}.wordle-fail{background:#9e9e9e33;color:#424242}.wordle-keyboard{margin-top:2rem}.keyboard-row{display:flex;gap:4px;justify-content:center;margin-bottom:6px;flex-wrap:wrap}.keyboard-key{min-width:28px;min-height:42px;height:42px;padding:0 8px;border:none;border-radius:6px;background:#f0f0f0;color:#333;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 4px #0000001a;touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media(min-width:431px){.keyboard-key:hover:not(:disabled){background:#e0e0e0;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}}.keyboard-key:active:not(:disabled){transform:scale(.95);box-shadow:0 1px 2px #0000001a}.keyboard-key:disabled{opacity:.5;cursor:not-allowed}.keyboard-key.correct{background:#4caf50;color:#fff}.keyboard-key.present{background:#ffc107;color:#fff}.keyboard-key.absent{background:#9e9e9e;color:#fff}.keyboard-key.special{background:#ff6b9d;color:#fff;font-weight:700}.keyboard-key.enter{min-width:70px;font-size:.75rem}.keyboard-key.special{min-width:50px}@media(max-width:430px){.wordle-cell{width:44px;height:44px;font-size:1.25rem}.keyboard-row{gap:3px;margin-bottom:5px}.keyboard-key{min-width:24px;min-height:38px;height:38px;font-size:.75rem;padding:0 6px}.keyboard-key.enter{min-width:60px;font-size:.7rem}.keyboard-key.special{min-width:42px}}.home-button{position:fixed;top:1rem;left:1rem;width:48px;height:48px;border:none;background:#ffffff4d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:50%;font-size:1.5rem;cursor:pointer;z-index:1000;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 2px 8px #0000001a;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.home-button:hover{background:#ffffff80;transform:scale(1.1);box-shadow:0 4px 12px #00000026}.home-button:active{transform:scale(.95)}@media(max-width:430px){.home-button{top:.75rem;left:.75rem;width:44px;height:44px;font-size:1.3rem}}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;user-select:text}:root{--primary-color: #ff6b9d;--primary-dark: #e91e63;--secondary-color: #ffc1cc;--bg-gradient-start: #ffeef7;--bg-gradient-end: #fff0f5;--text-color: #333;--card-bg: rgba(255, 255, 255, .95);--shadow: 0 4px 20px rgba(255, 107, 157, .15);--font-heading: "Playfair Display", serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}html{overflow-x:hidden;width:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);background-attachment:fixed;min-height:100vh;min-height:-webkit-fill-available;color:var(--text-color);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;width:100%;touch-action:pan-y;overscroll-behavior-y:contain}#root{min-height:100vh;min-height:-webkit-fill-available;width:100%;max-width:430px;margin:0 auto;position:relative}.page-container{min-height:100vh;min-height:-webkit-fill-available;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem;animation:fadeIn .4s ease;width:100%;max-width:430px;margin:0 auto}.page-centered{height:100vh;height:-webkit-fill-available;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem}.card{background:var(--card-bg);border-radius:24px;padding:2rem 1.5rem;box-shadow:var(--shadow);width:100%;max-width:100%;text-align:center;backdrop-filter:blur(10px);transition:transform .3s ease,box-shadow .3s ease;-webkit-backdrop-filter:blur(10px)}@media(min-width:431px){.card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #ff6b9d40}}.card h1{color:var(--primary-color);font-family:var(--font-heading);font-size:1.75rem;margin-bottom:1rem;font-weight:700;line-height:1.3}.card h2{color:var(--primary-color);font-family:var(--font-heading);font-size:1.5rem;margin-bottom:1rem;font-weight:600;line-height:1.3}.intro-text{font-size:1.1rem;line-height:1.8;margin-bottom:2rem;color:#555}.final-card{max-width:700px}.final-message{font-size:1.2rem;line-height:2;color:#555;margin-top:1rem}.final-message strong{color:var(--primary-color);font-size:1.3rem}.btn{padding:1.25rem 2rem;min-height:48px;border:none;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #ff6b9d4d;text-transform:uppercase;letter-spacing:.5px;width:100%;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.btn-primary{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);color:#fff}@media(min-width:431px){.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b9d66}}.btn-primary:active{transform:scale(.98);box-shadow:0 2px 10px #ff6b9d4d}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes confettiFall{to{transform:translateY(100vh) rotate(360deg);opacity:0}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media(min-width:431px){body{display:flex;justify-content:center;align-items:center;background:#f0f0f0}#root{border-left:2px solid rgba(0,0,0,.1);border-right:2px solid rgba(0,0,0,.1);box-shadow:0 0 20px #0000001a;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);min-height:844px;max-height:844px;overflow-y:auto}}@media(max-width:430px){.page-container{padding:1rem .5rem}.card{padding:1.5rem .75rem;border-radius:20px}.card h1{font-size:1.5rem}.card h2{font-size:1.3rem}}*:focus{outline:2px solid var(--primary-color);outline-offset:2px}button:focus,input:focus{outline:2px solid var(--primary-color);outline-offset:2px}
