.app,body{font-family:Lato,Segoe UI,Roboto,sans-serif}.app{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;margin:0 auto;max-width:600px;padding:0}.helper-text-wrapper{display:flex;justify-content:center;margin:12px 0;width:100%}.helper-text{align-items:center;color:#555;display:flex;font-size:20px;gap:12px;height:40px;line-height:1.6;overflow:hidden;text-align:center}.helper-text button{font-size:16px;padding:6px 12px;transform:translateY(-12px);transition:opacity 1s ease}.share-button,.skill-up-button{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:18px;font-weight:700;line-height:1;margin:0;opacity:0;padding:8px 16px;transform:translateY(10px);transition:opacity .6s ease,transform .6s ease,background-color .3s ease}.share-button.visible,.skill-up-button.visible{opacity:1;transform:translateY(0)}.skill-up-button{background-color:#d04080}.skill-up-button:hover{background-color:#c04080}.dark-mode .skill-up-button{background-color:#5a5a5a}.dark-mode .skill-up-button:hover{background-color:#6b6b6b}.share-button{background-color:#d04080}.share-button:hover{background-color:#c04080}.dark-mode .share-button{background-color:#5a5a5a}.dark-mode .share-button:hover{background-color:#6b6b6b}@media (max-width:480px){.helper-text{font-size:16px}}.dark-mode{background-color:#121212;color:#e0e0e0}.dark-mode .toolbar{background-color:#1e1e1e}.dark-mode .helper-text,.dark-mode .toolbar-title{color:#e0e0e0}.settings-panel{font-size:1.2rem;margin:20px auto;text-align:center}.toggle-label{align-items:center;display:flex;font-weight:700;gap:.5rem;justify-content:center;margin-bottom:1rem}.medal{font-size:2em;vertical-align:middle}.toolbar{align-items:center;background-color:#d13574;border-bottom:2px solid #b12c64;box-sizing:border-box;display:flex;justify-content:space-between;padding:.5rem 1rem;width:100%}.icon-button{background:none;border:none;color:#fff;cursor:pointer;font-size:24px;margin-left:3px}.icon-button:hover{opacity:.8}.toolbar-left,.toolbar-right{align-items:center;display:flex}.toolbar-center{font-family:Lato,Segoe UI,Roboto,sans-serif;font-size:20px;font-weight:700;left:50%;position:absolute;transform:translateX(-50%)}.toolbar-title{font-size:24px;font-weight:700}@media (max-width:500px){.toolbar-title{font-size:1.3em}.icon-button{font-size:1.2em;margin-left:6px}}.splash-container{align-items:flex-start;background:#00000003;box-sizing:border-box;height:100vh;left:0;padding-top:60px;position:absolute;top:0;width:100vw;z-index:1000}.splash-container,.splash-content{display:flex;justify-content:center}.splash-content{align-items:center;flex-direction:column}.splash-logo{margin-bottom:12px;max-width:320px}.splash-status-area{align-items:center;display:flex;flex-direction:column;margin-bottom:12px;margin-top:-30px;text-align:center}.splash-status{animation:pulse 2s ease-in-out infinite;color:#d32f6e;font-size:1.2rem;font-weight:600}.dark-mode .splash-status{color:#ffd1dc}.splash-status-sub{font-size:.9rem;margin-top:4px;opacity:.7}@keyframes pulse{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}.splash-error{background:#ff00000d;border:1px solid #f003;border-radius:4px;color:#c02a2a;padding:8px 16px}.dark-mode .splash-error{color:#ffb3b3}.splash-button{background-color:#fff;border:none;border-radius:6px;color:#d32f6e;cursor:pointer;font-size:2rem!important;font-weight:700;padding:16px 32px;transition:background-color .2s}.splash-button:hover{opacity:.8;text-decoration:underline}.splash-audio-prompt{animation:pulse 2s ease-in-out infinite;color:#d32f6e;font-size:.8rem;margin-top:20px;opacity:.8;pointer-events:none}.dark-mode .splash-audio-prompt{color:#ffd1dc;opacity:.6}.keyboard{align-items:center;display:flex;flex-direction:column;gap:10px;margin-top:6px}.keyboard-row{display:flex;gap:10px;justify-content:center;margin:0;padding:0}.keyboard button{background-color:#eee;border:1px solid #ccc;border-radius:6px;cursor:pointer;font-size:24px;font-weight:700;margin:0;min-height:50px;min-width:30px;padding:12px}.keyboard-row button:hover{background-color:#d0d0d0}.control-key{background-color:#ddd;color:#333;cursor:default;font-weight:700;transition:background-color .3s ease}.control-key.enabled{background-color:#b39ddb;cursor:pointer}.keyboard-row .control-key{width:auto}.keyboard-row .control-key.delete-key{width:80px}.keyboard-row .control-key.enter-key{align-items:center;display:flex;font-size:18px;font-weight:700;justify-content:center;line-height:1;padding:0;text-align:center;width:100px}.welcome-modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 10px #00000040;max-width:300px;padding:20px;position:relative;text-align:center;width:90%}.welcome-modal-content h2{margin-bottom:10px}.welcome-modal-content p{margin-bottom:20px}.continue-button{background-color:#d63384;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1em;padding:10px 20px}.continue-button:hover{background-color:#b82a6f}body.dark-mode .welcome-modal-content{background:#222;color:#fff}.settings-modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 10px #00000040;max-width:380px;min-width:380px;padding:20px;position:relative;text-align:left;width:100%}body.dark-mode .settings-modal-content{background:#222;color:#fff}.toggle-container{display:flex;justify-content:space-between;margin:20px 0}.settings-left{flex:1 1}.setting-label{font-weight:700}.settings-subtext{color:gray;font-size:.8em}.settings-icons{align-items:center;display:flex}.toggle-icon{font-size:1.5em;margin:0 8px}.switch{display:inline-block;height:24px;position:relative;width:40px}.switch input{height:0;opacity:0;width:0}.slider.round{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.slider.round:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.4s;width:18px}input:checked+.slider.round{background-color:#2196f3}input:checked+.slider.round:before{transform:translateX(16px)}.settings-select{border-radius:4px;cursor:pointer;font-size:16px;margin-right:8px;padding:5px;text-align:center;width:130px}.game-board{align-items:center;flex-direction:column;margin-top:28px}.game-board,.row{display:flex;gap:10px}.cell{align-items:center;border:2px solid #aaa;display:flex;font-size:24px;font-weight:700;height:50px;justify-content:center;overflow:hidden;pointer-events:none;position:relative;text-transform:uppercase;-webkit-user-select:none;user-select:none;width:50px;z-index:0}.cell.default{background-color:#fff}@keyframes slide-fill{0%{background-size:100% 0}to{background-size:100% 100%}}.cell.slide.gray{animation:slide-fill .5s ease-out forwards;animation:slide-fill var(--anim-duration,.5s) ease-out forwards;animation-delay:0ms;animation-delay:calc(var(--anim-delay-step, .1s)*var(--col-index, 0));background-color:initial;background-image:linear-gradient(#ccc,#ccc);background-repeat:no-repeat;background-size:100% 0;color:#fff;transition:color 0s linear;transition-delay:0ms;transition-delay:calc(var(--anim-delay-step, .1s)*var(--col-index, 0))}.cell.slide.static.gray{animation:none;background-color:#ccc;background-image:none;color:#fff}.cell.slide.yellow{animation:slide-fill .5s ease-out forwards;animation:slide-fill var(--anim-duration,.5s) ease-out forwards;animation-delay:0ms;animation-delay:calc(var(--anim-delay-step, .1s)*var(--col-index, 0));background-color:initial;background-image:linear-gradient(gold,gold);background-repeat:no-repeat;background-size:100% 0;color:#000;transition:color 0s linear;transition-delay:0ms;transition-delay:calc(var(--anim-delay-step, .1s)*var(--col-index, 0))}.cell.slide.static.yellow{animation:none;background-color:gold;background-image:none;color:#000}.cell.slide.green{animation:slide-fill .5s ease-out forwards;animation:slide-fill var(--anim-duration,.5s) ease-out forwards;animation-delay:0ms;animation-delay:calc(var(--anim-delay-step, .1s)*var(--col-index, 0));background-color:initial;background-image:linear-gradient(#32cd32,#32cd32);background-repeat:no-repeat;background-size:100% 0;color:#fff;transition:color 0s linear;transition-delay:0ms;transition-delay:calc(var(--anim-delay-step, .1s)*var(--col-index, 0))}.cell.slide.static.green{animation:none;background-color:#32cd32;background-image:none;color:#fff}.cell-text{position:relative;z-index:10}.cell.matrix.gray .cell-text,.cell.matrix.green .cell-text,.cell.tetris.gray .cell-text,.cell.tetris.green .cell-text{color:#fff}.cell.matrix.yellow .cell-text,.cell.tetris.yellow .cell-text,body.dark-mode .cell.matrix.yellow .cell-text,body.dark-mode .cell.tetris.yellow .cell-text{color:#000}.row.disabled .cell{background-color:#f0f0f0;border-color:#ccc;color:#999}body.dark-mode .cell.default{background-color:#111;color:#fff}body.dark-mode .row.disabled .cell{background-color:#222;border-color:#444;color:#555}.tetris-block{background-color:initial;color:inherit;height:0;height:var(--block-height,0);opacity:0;position:absolute;top:-100px;transform-origin:center center;width:0;width:var(--block-width,0);z-index:1}.tetris-block.static{animation:none;left:var(--target-left);opacity:1;top:var(--target-top)}.tetris-layer{inset:0;pointer-events:none;position:absolute}.tetris-block-cell{background-color:currentColor;position:absolute}.tetris-block.green{color:#32cd32}.tetris-block.yellow{color:gold}.tetris-block.gray{color:#ccc}.tetris-block{animation-delay:0ms;animation-delay:var(--block-delay,0ms);animation-duration:.5s;animation-duration:var(--tetris-fall-ms,var(--anim-duration,.5s));animation-fill-mode:forwards;animation-name:tetris-drop-custom;animation-timing-function:ease-out}.tetris-row-fill{animation:tetris-row-fill 1ms forwards;height:12.5%;left:0;opacity:0;position:absolute;top:var(--row-top);width:100%;z-index:0}.tetris-row-fill.static{animation:none;opacity:1}@keyframes tetris-row-fill{0%{opacity:0}to{opacity:1}}.tetris-row-fill.green{background-color:#32cd32}.tetris-row-fill.yellow{background-color:gold}.tetris-row-fill.gray{background-color:#ccc}@keyframes tetris-drop-custom{0%{left:var(--target-left);opacity:0;top:-100px;transform:rotate(0deg)}10%{opacity:1}to{left:var(--target-left);opacity:1;top:var(--target-top);transform:rotate(0deg)}}.matrix-pixel{animation:matrix-drop .5s linear forwards;animation:matrix-drop var(--anim-duration,.5s) linear forwards;height:4.16667%;left:var(--pixel-left);opacity:0;position:absolute;top:-1px;width:5.55556%;z-index:1}.matrix-pixel.static{animation:none;opacity:1;top:var(--pixel-target-top)}@keyframes matrix-drop{0%{opacity:0;top:-1px}10%{opacity:1}to{opacity:1;top:var(--pixel-target-top)}}.matrix-pixel.green{background-color:#32cd32;color:#32cd32}.matrix-pixel.yellow{background-color:gold;color:gold}.matrix-pixel.gray{background-color:#ccc;color:#ccc}.matrix-row-fill{animation:matrix-row-fill 1ms forwards;height:4.16667%;left:0;opacity:0;position:absolute;top:var(--row-top);width:100%;z-index:0}.matrix-row-fill.static{animation:none;opacity:1}@keyframes matrix-row-fill{0%{opacity:0}to{opacity:1}}.matrix-row-fill.green{background-color:#32cd32}.matrix-row-fill.yellow{background-color:gold}.matrix-row-fill.gray{background-color:#ccc}.modal-content{background:#fff;border-radius:8px;color:#333;max-width:250px;padding:20px;position:relative;text-align:left;width:90%}body.dark-mode .modal-content{background:#222;color:#ddd}.help-menu-buttons{display:flex;flex-direction:column;gap:10px;margin-top:20px}.help-menu-button{background-color:#eee;border:1px solid #ccc;border-radius:8px;cursor:pointer;font-size:1em;padding:10px 20px;transition:background-color .2s}.help-menu-button:hover{background-color:#ddd}.modal-close{color:#333}.modal-close:hover{color:#d00}body.dark-mode .modal-close{color:#fff}body.dark-mode .modal-close:hover{color:#f66}.help-modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 10px #00000040;max-width:500px;padding:20px;position:relative;width:90%}body.dark-mode .help-modal-content{background:#222;color:#fff}.help-modal-content ul ul{font-size:.9em;margin-top:4px}.help-hints{margin-left:22px}.help-hints p{font-size:.95em;margin:4px 0}.hex-modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 10px #00000040;max-width:600px;padding:20px;position:relative;width:90%}body.dark-mode .hex-modal-content{background:#222;color:#fff}.hex-table{border-collapse:collapse;font-family:monospace;font-size:.9em;margin-top:10px;width:100%}.hex-table td,.hex-table th{border:1px solid #ccc;padding:6px 8px;text-align:center}.hex-table th{background-color:#f0f0f0}body.dark-mode th{background:#333;color:#fff}.modal-overlay{background:#0009;bottom:0;right:0}.about-modal-content{background:#fff;border-radius:8px;color:#333;max-width:450px;padding:20px;position:relative;text-align:left;width:90%}.modal-close{background:none;font-size:1.2em}.about-modal-content h2{font-size:1.5em;margin-top:0}.about-modal-content p{line-height:1.5;margin-bottom:1em}body.dark-mode .about-modal-content{background:#222;color:#ddd}.modal-close svg{color:#333}body.dark-mode .modal-close svg{color:#ddd}.modal-close:hover svg{color:#d00}body.dark-mode .modal-close:hover svg{color:#f66}.modal-overlay{align-items:center;background:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.share-modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 10px #00000040;max-width:220px;min-width:200px;padding:20px;position:relative;width:auto}.modal-close{font-size:1.5em}.score-line{font-size:.8em;font-weight:700;margin-bottom:0;text-align:left}.share-block{align-items:center;border-bottom:1px solid #ddd;display:flex;gap:2px;margin-bottom:10px;padding:5px 0}.guess-block{font-family:monospace;font-size:1em;white-space:pre}.medal-big{font-size:2.5em}.X-big,.medal-big{margin-left:0;text-align:center;width:2em}.X-big{font-size:.667em}.clipboard-status{color:green;font-style:italic;margin-top:1em;text-align:center}.stats-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:2000}.stats-modal-content{background:#1a1a1a;border:1px solid #333;border-radius:12px;box-shadow:0 8px 32px #00000080;color:#fff;display:flex;flex-direction:column;max-height:85vh;max-width:450px;padding:24px;position:relative;width:90%}.stats-modal-content h2{color:#fff;font-size:1.2rem;letter-spacing:2px;margin-top:0;text-align:center;text-transform:uppercase}.stats-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr);margin:20px 0}.stat-card{text-align:center}.stat-value{display:block;font-size:2rem;font-weight:700}.stat-label{color:#aaa;font-size:.65rem;text-transform:uppercase}.dist-container{margin:24px 0}.dist-bar-wrapper{align-items:center;display:flex;font-family:monospace;margin-bottom:6px}.dist-label{color:#fff;font-size:.8rem;width:25px}.dist-bar{align-items:center;background:#3a3a3c;border-radius:2px;color:#fff;display:flex;font-size:.75rem;height:18px;justify-content:flex-end;min-width:20px;padding-right:8px;transition:width .5s ease-out}.dist-bar.highlight{background:#538d4e}.stats-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px;padding:0 4px}.stats-header h2{margin:0!important}.medals-summary{margin:24px 0}.medals-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.history-container h3,.medals-header h3{color:#fff;font-size:.9rem;letter-spacing:.5px;margin:0;text-transform:uppercase}.segmented-control{background:#2c2c2e;border-radius:8px;display:flex;margin-right:32px;padding:2px}.segmented-control button{background:#0000;border:none;border-radius:6px;color:#888;cursor:pointer;font-size:.75rem;font-weight:600;padding:4px 12px;transition:all .2s}.segmented-control button.active{background:#3a3a3c;box-shadow:0 2px 4px #0003;color:#fff}.medals-table{background:#28282d66;border:1px solid #ffffff0d;border-radius:8px;display:flex;flex-direction:column;margin-top:8px;padding:4px}.medals-table-header{border-bottom:1px solid #ffffff1a;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;margin-bottom:4px;padding:8px 12px}.col-label{color:#888;font-size:.7rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.medal-row{align-items:center;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;padding:6px 12px;transition:background .2s}.medal-row:hover{background:#ffffff05}.medal-row:not(:last-child){border-bottom:1px solid #ffffff08}.medal-type{align-items:center;color:#fff;display:flex;font-size:.95rem;font-weight:600;gap:8px}.medal-val{color:#fff;font-family:inherit;font-size:1.1rem;font-weight:700}.col-label:not(:first-child),.medal-val{text-align:center}.history-container{flex-grow:1;margin-top:12px;overflow-y:auto;padding-top:8px}.history-list{list-style:none;margin:0;padding:0}.history-item{grid-gap:8px;align-items:center;border-bottom:1px solid #222;display:grid;gap:8px;grid-template-columns:80px 1fr 80px;padding:8px 0}.history-date{color:#888;font-size:.85rem}.history-medals{display:flex;font-size:1.1rem;gap:6px;justify-content:center}.history-status{font-size:.8rem;font-weight:700;letter-spacing:.5px;text-align:center}.status-gold{color:gold}.status-silver{color:silver}.status-bronze{color:#cd7f32}.status-scratch{color:#e74c3c}body:not(.dark-mode) .stats-modal-content{background:#fff;border:1px solid #ccc;color:#1a1a1b}body:not(.dark-mode) .stat-label{color:#666}body:not(.dark-mode) .dist-bar{background:#787c7e}body:not(.dark-mode) .dist-label{color:#1a1a1b}body:not(.dark-mode) .history-date{color:#666}body:not(.dark-mode) .history-item{border-bottom:1px solid #eee}body:not(.dark-mode) .history-container h3,body:not(.dark-mode) .medals-header h3,body:not(.dark-mode) .stats-modal-content h2{color:#1a1a1b}.hamburger-overlay{background:#0000;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1500}.hamburger-menu{background:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;min-width:150px;padding:8px 0;position:fixed;z-index:1501}body.dark-mode .hamburger-menu{background:#222;border-color:#444}.menu-item{background:none;border:none;color:#333;cursor:pointer;font-size:1rem;padding:10px 16px;text-align:left;transition:background .2s;width:100%}body.dark-mode .menu-item{color:#eee}.menu-item:hover{background-color:#f5f5f5}body.dark-mode .menu-item:hover{background-color:#333}.contact-modal-overlay{align-items:center;background:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2000}.contact-modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 10px #00000040;display:flex;flex-direction:column;gap:16px;max-width:400px;padding:24px;position:relative;width:90%}body.dark-mode .contact-modal-content{background:#222;color:#fff}.modal-close{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;justify-content:center;padding:0;position:absolute;right:10px;top:10px}.modal-close svg{color:#888;height:24px;transition:color .2s ease;width:24px}.modal-close:hover svg{color:#e74c3c}.contact-text{color:#555;font-size:.95rem;line-height:1.4;margin:0}body.dark-mode .contact-text{color:#ccc}.form-group{display:flex;flex-direction:column}input,textarea{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:1rem;padding:10px;width:100%}body.dark-mode input,body.dark-mode textarea{background:#333;border-color:#555;color:#fff}textarea{resize:none}.char-count{color:#999;font-size:.75rem;margin-top:4px;text-align:right}.send-button{background-color:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:12px;transition:background-color .2s}.send-button:disabled{background-color:#ccc;cursor:not-allowed}.send-button:hover:not(:disabled){background-color:#1976d2}body.dark-mode .send-button:disabled{background-color:#555;color:#888}
/*# sourceMappingURL=main.9926dfc0.css.map*/