@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{color:#fff;overscroll-behavior-y:contain;-webkit-user-select:none;user-select:none;background:#0f0f0f;min-height:100dvh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}.game-app{background:linear-gradient(#1a1a1a,#0f0f0f);flex-direction:column;max-width:440px;height:100dvh;margin:0 auto;display:flex;position:relative;overflow:hidden}.app-header{padding:max(env(safe-area-inset-top,16px),16px) 20px 0;text-align:center}.header-top{justify-content:center;align-items:center;gap:12px;display:flex;position:relative}.game-logo{letter-spacing:.08em;font-size:1.6rem;font-weight:900}.logo-alpha{color:#22c55e}.logo-rush{color:#fff}.header-buttons{gap:6px;display:flex;position:absolute;right:0}.icon-button{color:#fff9;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:border-color .15s,color .15s;display:flex}.icon-button:hover{color:#22c55e;border-color:#22c55e}.game-metrics{justify-content:center;align-items:center;gap:24px;margin-top:8px;display:flex}.metric{text-align:center}.metric-value{color:#22c55e;font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:800;display:block}.metric-label{color:#fff6;letter-spacing:.1em;font-size:.6rem;font-weight:600}.metric-sep{background:#ffffff1f;width:1px;height:24px}.progress-bar{background:#ffffff14;border-radius:2px;height:3px;margin:8px 0 0;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#22c55e,#16a34a);border-radius:2px;width:0%;height:100%;transition:width .6s cubic-bezier(.22,1,.36,1),background .6s}.input-zone{padding:12px 20px 0}.word-input-container{align-items:center;gap:8px;display:flex}#word-input{color:#fff;letter-spacing:.12em;text-transform:uppercase;background:#ffffff0f;border:1px solid #ffffff26;border-radius:10px;outline:none;flex:1;padding:10px 14px;font-size:16px;font-weight:700;transition:border-color .15s}#word-input::placeholder{color:#ffffff4d;letter-spacing:.06em;font-weight:500}#word-input:focus{border-color:#22c55e}.target-indicator{color:#22c55eb3;background:#22c55e0f;border:1px dashed #22c55e4d;border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:6px;padding:6px 12px;font-size:.72rem;font-weight:600;transition:background .3s,color .3s,border-color .3s;animation:2s ease-in-out infinite targetPulse;display:flex}.target-indicator.active{color:#22c55e;background:#22c55e1a;border:1px solid #22c55e80;animation:none}.target-indicator-icon{font-size:.6rem;transition:transform .2s}.target-indicator.active .target-indicator-icon{color:#4caf50}@keyframes targetPulse{0%,to{opacity:.7;border-color:#22c55e26}50%{opacity:1;border-color:#22c55e80}}.word-card.nudge-pulse{animation:.6s ease-out nudgePulse}@keyframes nudgePulse{0%{box-shadow:0 0 #22c55e66}50%{box-shadow:0 0 12px 3px #22c55e40}to{box-shadow:none}}.submit-button{color:#0a0a0a;cursor:pointer;background:#22c55e;border:none;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:800;transition:background .15s,transform .1s}.submit-button:hover{background:#16a34a}.submit-button:active{transform:scale(.95)}.hint-button{cursor:pointer;color:#fff9;background:#ffffff0f;border:1px solid #ffffff26;border-radius:10px;align-items:center;padding:9px;transition:border-color .15s,color .15s;display:flex}.hint-button:hover{color:#22c55e;border-color:#22c55e}.feedback-area{max-height:0;padding:0;transition:max-height .3s,padding .3s;overflow:hidden}.feedback-area.show{max-height:300px;padding:8px 0 4px}.feedback-label{color:#fff6;letter-spacing:.05em;margin-bottom:4px;font-size:.65rem;font-weight:600}.feedback-row{justify-content:center;gap:4px;margin-bottom:4px;display:flex}.feedback-tile{color:#fff;text-transform:uppercase;border-radius:6px;justify-content:center;align-items:center;width:34px;height:36px;font-size:.85rem;font-weight:800;transition:transform .2s;display:flex}.feedback-tile.correct{background:#4caf50;border:1px solid #66bb6a}.feedback-tile.present{background:#ff9800;border:1px solid #ffb74d}.feedback-tile.absent{background:#424242;border:1px solid #616161}.feedback-tile.flip-in{animation:.4s forwards feedbackFlip}@keyframes feedbackFlip{0%{opacity:0;transform:scaleY(0)}50%{transform:scaleY(1.1)}to{opacity:1;transform:scaleY(1)}}.game-info{color:#fff6;justify-content:center;gap:8px;margin-top:8px;font-size:.7rem;display:flex}.sep{color:#ffffff26}.objective-bar{text-align:center;color:#ffffff80;margin-top:8px;font-size:.72rem}.mini-info-btn{color:#22c55e;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:.7rem;text-decoration:underline}.how-to-play{text-align:center;margin-top:6px}.how-to-play summary{color:#ffffff80;cursor:pointer;font-size:.72rem;list-style:none}.how-to-play summary::-webkit-details-marker{display:none}.how-to-play-content{text-align:left;color:#fff9;padding:8px 0;font-size:.72rem;line-height:1.6}.how-to-play-content p{margin-bottom:4px}.game-status{text-align:center;min-height:20px;margin-top:6px}.status-message{color:#fff9;font-size:.75rem;transition:color .2s}.status-message.success{color:#4caf50}.status-message.error{color:#ff5252}.input-shake{animation:.4s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.words-section{flex:1;min-height:0;padding:8px 12px;overflow-y:auto}.words-grid{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.word-card{cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;padding:6px 8px;transition:border-color .2s,background .2s,transform .15s,box-shadow .3s}.word-card:hover{border-color:#fff3}.word-card:active{transform:scale(.98)}.word-card.targeted{background:#22c55e14;border-color:#22c55e;box-shadow:0 0 12px #22c55e26}.word-card.completed{background:#4caf5014;border-color:#4caf5066}.word-card.cascade-effect{animation:.6s ease-out cascadePulse}@keyframes cascadePulse{0%{box-shadow:0 0 #22c55e99}50%{box-shadow:0 0 20px 6px #22c55e59}to{box-shadow:none}}.word-card.chain-complete-flash{animation:.8s ease-out chainFlash}@keyframes chainFlash{0%{background:#4caf5066;box-shadow:0 0 24px #4caf5080}to{box-shadow:none;background:#4caf5014}}.word-header{margin-bottom:4px}.word-label{color:#fff6;letter-spacing:.06em;font-size:.65rem;font-weight:700}.word-card.completed .word-label{color:#4caf50}.word-letters{gap:3px;display:flex}.letter-cell{color:#fff3;background:#ffffff05;border:1px solid #ffffff1a;border-radius:5px;justify-content:center;align-items:center;width:28px;height:32px;font-size:.8rem;font-weight:700;transition:all .2s;display:flex}.letter-cell.revealed{color:#22c55e;background:#22c55e14;border-color:#22c55e66}.letter-cell.completed{color:#fff;background:#4caf5040;border-color:#4caf5080}.letter-cell.cell-cascade-pop{animation:.5s cubic-bezier(.17,.67,.35,1.3) cellPop}@keyframes cellPop{0%{transform:scale(1)}30%{background:#22c55e4d;transform:scale(1.35)}to{transform:scale(1)}}.letter-cell.cell-reveal-pop{animation:.4s cubic-bezier(.17,.67,.35,1.2) revealPop}@keyframes revealPop{0%{transform:scale(1)}40%{transform:scale(1.2)}to{transform:scale(1)}}.keyboard-section{padding:6px 4px max(env(safe-area-inset-bottom,8px),8px);background:#141414;border-top:1px solid #ffffff0f}.keyboard-row{justify-content:center;gap:4px;margin-bottom:4px;display:flex}.key{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:6px;justify-content:center;align-items:center;min-width:30px;height:42px;padding:0 4px;font-size:.8rem;font-weight:700;transition:background .15s,transform .1s,color .15s;display:flex}.key:hover{background:#fff3}.key:active{background:#ffffff40;transform:scale(.92)}.key-wide{letter-spacing:.02em;min-width:52px;font-size:.7rem}.key.key-correct{color:#fff;background:#22c55e}.key.key-present{color:#fff;background:#ca8a04}.key.key-absent{color:#ffffff4d;background:#334155}.score-popup{color:#22c55e;text-shadow:0 0 10px #22c55e80,0 2px 4px #00000080;pointer-events:none;z-index:50;white-space:nowrap;font-size:1.2rem;font-weight:900;animation:1.4s cubic-bezier(.16,1,.3,1) forwards scoreFloat;position:absolute;top:40%;transform:translate(-50%)}@keyframes scoreFloat{0%{opacity:1;transform:translate(-50%)translateY(0)scale(.5)}20%{opacity:1;transform:translate(-50%)translateY(-10px)scale(1.2)}to{opacity:0;transform:translate(-50%)translateY(-80px)scale(.8)}}.chain-banner{color:#fff;text-shadow:0 0 20px #22c55ecc,0 0 40px #22c55e66;letter-spacing:.1em;pointer-events:none;z-index:150;opacity:0;white-space:nowrap;font-size:1.4rem;font-weight:900;transition:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.chain-banner.show{animation:2.5s cubic-bezier(.16,1,.3,1) forwards chainBannerIn}@keyframes chainBannerIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}15%{opacity:1;transform:translate(-50%,-50%)scale(1.15)}30%{transform:translate(-50%,-50%)scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(.9)translateY(-20px)}}.screen-shake{animation:.4s ease-in-out screenShake}@keyframes screenShake{0%,to{transform:translate(0)}15%{transform:translate(-4px)translateY(2px)}30%{transform:translate(4px)translateY(-2px)}45%{transform:translate(-3px)translateY(1px)}60%{transform:translate(3px)translateY(-1px)}75%{transform:translate(-2px)}}.confetti-piece{pointer-events:none;z-index:300;border-radius:2px;width:8px;height:8px;animation:linear forwards confettiFall;position:absolute;top:-10px}@keyframes confettiFall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}.success-toast{opacity:0;pointer-events:none;z-index:100;transition:opacity .3s,transform .3s;position:fixed;top:60px;left:50%;transform:translate(-50%)translateY(-20px)}.success-toast.show{opacity:1;transform:translate(-50%)translateY(0)}.toast-content{color:#fff;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#4caf50f2;border-radius:10px;padding:8px 16px;font-size:.8rem;font-weight:700}.victory-modal,.settings-modal{z-index:200;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.victory-modal.show,.settings-modal.show{display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;position:absolute;inset:0}.victory-card,.settings-card{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:20px;width:90%;max-width:360px;max-height:90vh;padding:28px 24px;position:relative;overflow-y:auto}.victory-title{text-align:center;color:#22c55e;margin-bottom:16px;font-size:1.4rem;font-weight:900}.final-stats{text-align:center}.final-time{margin-bottom:16px}.time-value{color:#22c55e;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:900;display:block}.time-unit{color:#fff6;letter-spacing:.1em;font-size:.6rem}.new-record-pulse{animation:1s ease-in-out infinite alternate recordPulse}@keyframes recordPulse{0%{transform:scale(1)}to{transform:scale(1.08)}}.stats-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.stat-item{text-align:center}.stat-value{color:#fff;font-size:1.1rem;font-weight:800;display:block}.stat-label{color:#fff6;letter-spacing:.08em;font-size:.55rem}.next-puzzle-countdown{text-align:center;color:#ffffffb3;background:#22c55e14;border:1px solid #22c55e33;border-radius:10px;margin-top:16px;padding:10px;font-size:.75rem}.next-puzzle-countdown .countdown-time{color:#22c55e;font-variant-numeric:tabular-nums;margin-top:4px;font-size:1.3rem;font-weight:900;display:block}.next-puzzle-countdown:empty{display:none}.practice-badge{color:#ce93d8;letter-spacing:.08em;background:#9c27b026;border:1px solid #9c27b04d;border-radius:4px;margin-left:8px;padding:2px 8px;font-size:.6rem;font-weight:700;display:inline-block}.victory-actions{flex-wrap:wrap;gap:12px;margin-top:20px;padding:0 4px;display:flex}.victory-btn{cursor:pointer;border:none;border-radius:10px;flex:auto;min-width:120px;padding:14px 16px;font-size:.85rem;font-weight:800;transition:transform .1s}.victory-btn:active{transform:scale(.96)}.victory-btn.primary{color:#0a0a0a;background:#22c55e}.victory-btn.secondary{color:#fff;background:#ffffff1a}.settings-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.settings-header h3{font-size:1.1rem;font-weight:800}.close-button{color:#ffffff80;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1.4rem}.settings-content p{color:#ffffffb3;margin-bottom:6px;font-size:.8rem;line-height:1.6}.setting-item{color:#ffffffb3;cursor:pointer;align-items:center;gap:10px;padding:8px 0;font-size:.85rem;display:flex}.setting-item.stacked{flex-direction:column;align-items:flex-start;gap:6px}.setting-item input[type=text]{color:#fff;background:#ffffff0f;border:1px solid #ffffff26;border-radius:8px;outline:none;width:100%;padding:8px 12px;font-size:.85rem}.setting-item input[type=text]:focus{border-color:#22c55e}.settings-footer{border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;display:flex}.settings-version{color:#ffffff4d;font-size:.7rem}.reset-button{color:#ff5252;cursor:pointer;background:0 0;border:1px solid #ff525266;border-radius:8px;padding:6px 12px;font-size:.7rem;font-weight:600}.puzzle-info-link{cursor:pointer;transition:color .15s}.puzzle-info-link:hover{color:#22c55e;text-decoration:underline}.archive-card{max-width:400px;max-height:85vh}.archive-filters{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.archive-filter{color:#fff9;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:6px;padding:4px 12px;font-size:.7rem;font-weight:700;transition:all .15s}.archive-filter:hover{color:#22c55e;border-color:#22c55e66}.archive-filter.active{color:#22c55e;background:#22c55e26;border-color:#22c55e}.archive-grid{grid-template-columns:repeat(5,1fr);gap:6px;max-height:50vh;padding:2px;display:grid;overflow-y:auto}.archive-tile{aspect-ratio:1;cursor:pointer;color:#ffffffb3;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.75rem;font-weight:800;transition:all .15s;display:flex;position:relative}.archive-tile:hover{background:#22c55e1a;border-color:#22c55e;transform:scale(1.05)}.archive-tile:active{transform:scale(.95)}.archive-tile.today{color:#22c55e;background:#22c55e1f;border-color:#22c55e;box-shadow:0 0 8px #22c55e33}.archive-tile.completed{color:#66bb6a;background:#4caf501a;border-color:#4caf5066}.archive-tile.completed .archive-check{display:block}.archive-check{color:#4caf50;font-size:.55rem;display:none}.archive-diff{letter-spacing:.04em;opacity:.6;text-transform:uppercase;font-size:.45rem;font-weight:600}.archive-diff.easy{color:#4caf50}.archive-diff.medium{color:#ff9800}.archive-diff.challenging{color:#ff7043}.archive-diff.hard{color:#ff5252}.archive-diff.expert{color:#e040fb}.archive-stats{color:#ffffff80;border-top:1px solid #ffffff14;justify-content:center;gap:20px;margin-top:12px;padding-top:10px;font-size:.7rem;display:flex}.archive-stats:empty{display:none}.archive-stat-value{color:#22c55e;font-weight:800}.install-banner{padding:0 12px 8px;display:none}.install-banner.show{animation:.3s ease-out slideUp;display:block}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.install-content{background:linear-gradient(135deg,#22c55e26,#16a34a1a);border:1px solid #22c55e4d;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.install-text{flex-direction:column;flex:1;gap:2px;display:flex}.install-text strong{color:#22c55e;font-size:.78rem}.install-text span{color:#ffffff80;font-size:.65rem}.install-btn{color:#0a0a0a;cursor:pointer;white-space:nowrap;background:#22c55e;border:none;border-radius:8px;padding:8px 14px;font-size:.7rem;font-weight:800;transition:background .15s}.install-btn:hover{background:#16a34a}.install-dismiss{color:#ffffff4d;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.2rem;line-height:1}.install-dismiss:hover{color:#fff9}.app-footer{text-align:center;color:#ffffff40;padding:8px;font-size:.65rem}.app-footer a{color:#64748b;text-decoration:none;transition:color .15s}.app-footer a:hover{color:#22c55e}.tutorial-overlay{z-index:500;background:#000000d9;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tutorial-card{background:#0f172a;border:1px solid #22c55e;border-radius:12px;width:90%;max-width:380px;padding:28px;animation:.3s tutorialSlideIn}@keyframes tutorialSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tutorial-title{text-align:center;color:#fff;margin-bottom:20px;font-size:1.2rem;font-weight:900}.tutorial-step{align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.tutorial-step-icon{flex-shrink:0;font-size:1.3rem;line-height:1}.tutorial-step-content h4{color:#fff;margin-bottom:2px;font-size:.85rem;font-weight:700}.tutorial-step-content p{color:#fff9;font-size:.75rem;line-height:1.5}.tutorial-cta{color:#fff;cursor:pointer;background:#22c55e;border:none;border-radius:8px;width:100%;height:44px;margin-top:8px;font-size:.85rem;font-weight:800;transition:background .15s}.tutorial-cta:hover{background:#16a34a}.tut-dots{justify-content:center;gap:8px;margin-bottom:16px;display:flex}.tut-dot{background:#fff3;border-radius:50%;width:8px;height:8px;transition:background .2s,transform .2s}.tut-dot-active{background:#22c55e;transform:scale(1.3)}.tut-demo{background:#ffffff0d;border-radius:10px;margin:16px 0 8px;padding:16px}.tut-row{justify-content:center;gap:4px;margin-bottom:6px;display:flex}.tut-letter{color:#fff;background:#ffffff14;border:1px solid #ffffff1a;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:800;display:flex}.tut-letter.tut-label{color:#fff6;background:0 0;border:none;width:24px;font-weight:600}.tut-letter.tut-green{background:#22c55e;border-color:#22c55e}.tut-letter.tut-yellow{color:#000;background:#eab308;border-color:#eab308}.tut-letter.tut-gray{color:#fff6;background:#ffffff26;border-color:#ffffff26}.tut-letter.tut-cascade{color:#22c55e;background:#22c55e40;border-color:#22c55e;animation:1.2s infinite tutCascadePulse}@keyframes tutCascadePulse{0%,to{opacity:1}50%{opacity:.5}}.tut-cascade-arrow{text-align:center;color:#22c55e;text-transform:uppercase;letter-spacing:2px;margin:4px 0;font-size:.65rem;font-weight:700}.tut-demo-caption{text-align:center;color:#ffffff73;margin-top:10px;font-size:.7rem;line-height:1.4}.tut-progress-bar{background:#ffffff1a;border-radius:3px;height:6px;margin-bottom:12px;overflow:hidden}.tut-progress-fill{background:linear-gradient(90deg,#22c55e,#4ade80);border-radius:3px;width:100%;height:100%;animation:1.5s ease-out tutProgressFill}@keyframes tutProgressFill{0%{width:0%}to{width:100%}}.tut-stats-row{justify-content:center;gap:20px;display:flex}.tut-stat{color:#ffffff80;font-size:.75rem}.tut-stat strong{color:#fff;font-weight:800}.tut-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.tut-back{color:#fff9;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:8px;padding:10px 20px;font-size:.8rem;font-weight:600;transition:all .15s}.tut-back:hover{color:#fff;border-color:#fff6}.tut-actions .tutorial-cta{flex:1}@keyframes streakPop{0%{transform:scale(1)}40%{transform:scale(1.4)}to{transform:scale(1)}}.streak-celebrate{animation:.4s ease-out streakPop}.streak-highlight{transition:color .3s;color:#22c55e!important}.pwa-nudge{z-index:400;background:#0f172a;border-top:1px solid #22c55e;align-items:center;gap:10px;padding:12px 16px;animation:.3s ease-out slideUp;display:flex;position:fixed;bottom:0;left:0;right:0}.pwa-nudge-text{color:#fffc;flex:1;font-size:.75rem}.pwa-nudge-install{color:#fff;cursor:pointer;white-space:nowrap;background:#22c55e;border:none;border-radius:6px;padding:8px 14px;font-size:.72rem;font-weight:700}.pwa-nudge-install:hover{background:#16a34a}.pwa-nudge-close{color:#fff6;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.2rem;line-height:1}.pwa-nudge-close:hover{color:#ffffffb3}#share-modal{z-index:1000;opacity:0;justify-content:center;align-items:center;transition:opacity .2s;display:none;position:fixed;inset:0}#share-modal.show{opacity:1}.share-modal-overlay{background:#000c;position:absolute;inset:0}.share-modal-card{background:#0f172a;border:1px solid #22c55e;border-radius:16px;width:92vw;max-width:520px;padding:16px 16px 12px;animation:.3s tutorialSlideIn;position:relative}.share-modal-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.5rem;line-height:1;transition:color .15s;position:absolute;top:12px;right:16px}.share-modal-close:hover{color:#f8fafc}.share-modal-preview{border-radius:8px;margin-bottom:10px;overflow:hidden}.share-modal-preview canvas{max-width:100%;display:block;height:auto!important}.share-icons-row{justify-content:center;gap:8px;margin-bottom:8px;display:flex}.share-icon-btn{cursor:pointer;background:0 0;border:1px solid #334155;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:3px;max-width:60px;padding:7px 6px 5px;transition:border-color .15s,background .15s;display:flex}.share-icon-btn:hover{background:#22c55e14;border-color:#22c55e}.share-icon-btn svg{color:#f8fafc;width:18px;height:18px}.share-icon-btn span{color:#94a3b8;white-space:nowrap;font-size:.55rem;font-weight:600}.share-modal-copy{text-align:center;color:#64748b;cursor:pointer;background:0 0;border:none;width:100%;padding:8px 0;font-size:.75rem;transition:color .15s;display:block}.share-modal-copy:hover{color:#22c55e}.share-toast{color:#f8fafc;z-index:1100;opacity:0;pointer-events:none;white-space:nowrap;background:#1e293b;border:1px solid #22c55e;border-radius:8px;padding:10px 20px;font-size:.8rem;font-weight:600;transition:opacity .3s,transform .3s;position:fixed;bottom:80px;left:50%;transform:translate(-50%)translateY(20px)}.share-toast.show{opacity:1;transform:translate(-50%)translateY(0)}.row-hint-panel{background:#22c55e0f;border:1px solid #22c55e33;border-radius:8px;justify-content:space-between;align-items:center;padding:6px 12px;margin:4px 0 0;animation:.2s fadeIn;display:flex}#row-hint-panel-container:empty{display:none}.hint-pattern{color:#22c55e;letter-spacing:.3em;font-family:Courier New,monospace;font-size:1rem;font-weight:700}.hint-meta{color:#64748b;font-size:.65rem}.header-share-btn{display:none}.header-share-btn.visible{display:flex}.player-count{color:#64748b;font-size:.65rem}.plus-badge{color:#f59e0b;vertical-align:middle;text-shadow:0 0 6px #f59e0b99;margin-left:3px;font-size:.7rem;display:inline-block}.plus-badge-lg{color:#f59e0b;text-shadow:0 0 8px #f59e0bb3;margin-right:4px;font-size:1rem}.victory-rank{text-align:center;min-height:20px;margin:8px 0 4px}.victory-rank-text{color:#94a3b8;letter-spacing:.04em;font-size:.8rem;font-weight:600}.victory-rank-text.rank-best{color:#4caf50;font-size:.85rem;animation:.5s rank-pulse}@keyframes rank-pulse{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.victory-plus-cta{background:linear-gradient(135deg,#f59e0b1f,#f59e0b0f);border:1px solid #f59e0b4d;border-radius:12px;margin:8px 0;padding:10px 14px}.plus-cta-inner{align-items:center;gap:10px;display:flex}.plus-cta-badge{color:#f59e0b;text-shadow:0 0 10px #f59e0bb3;flex-shrink:0;font-size:1.3rem}.plus-cta-text{flex:1;min-width:0}.plus-cta-text strong{color:#f59e0b;font-size:.75rem;font-weight:700;display:block}.plus-cta-text span{color:#94a3b8;margin-top:1px;font-size:.65rem;display:block}.plus-cta-btn{color:#0f172a;cursor:pointer;letter-spacing:.06em;white-space:nowrap;background:#f59e0b;border:none;border-radius:8px;padding:6px 12px;font-size:.7rem;font-weight:800;transition:background .15s,transform .1s}.plus-cta-btn:active{transform:scale(.96)}.plus-cta-btn:hover{background:#fbbf24}.leaderboard-card{max-height:80vh;overflow-y:auto}.leaderboard-personal-best{margin-bottom:12px}.lb-pb-card{background:linear-gradient(135deg,#22c55e1f,#22c55e0d);border:1px solid #22c55e40;border-radius:12px;flex-direction:column;gap:3px;padding:12px 16px;display:flex}.lb-pb-label{color:#22c55e;letter-spacing:.08em;text-transform:uppercase;font-size:.65rem;font-weight:700}.lb-pb-time{color:#22c55e;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:900;line-height:1}.lb-pb-meta{color:#64748b;margin-top:2px;font-size:.65rem}.leaderboard-list{flex-direction:column;gap:4px;display:flex}.lb-row{background:#ffffff08;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:.72rem;transition:border-color .15s;display:flex}.lb-row-latest{background:#22c55e0d;border-color:#22c55e33}.lb-row-num{color:#475569;text-align:right;flex-shrink:0;width:16px;font-size:.65rem;font-weight:700}.lb-row-puzzle{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.lb-row-time{color:#f8fafc;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.lb-row-meta{color:#64748b;white-space:nowrap;font-size:.62rem}.lb-row-date{color:#475569;white-space:nowrap;font-size:.6rem}.leaderboard-empty{text-align:center;color:#475569;padding:32px 0;font-size:.8rem}.plus-card{max-height:80vh;overflow-y:auto}.plus-content{padding:4px 0}.plus-active{text-align:center;padding:12px 0}.plus-active-badge{color:#0f172a;letter-spacing:.08em;background:linear-gradient(135deg,#f59e0b,#fbbf24);border-radius:20px;margin-bottom:16px;padding:6px 16px;font-size:.8rem;font-weight:900;display:inline-block}.plus-perks{flex-direction:column;gap:8px;margin:14px 0;display:flex}.plus-perk{color:#f8fafc;background:#f59e0b14;border-left:3px solid #f59e0b;border-radius:8px;padding:8px 12px;font-size:.82rem}.plus-perk-sub{color:#64748b;margin-left:4px;font-size:.72rem}.plus-thanks{color:#64748b;margin-top:12px;font-size:.75rem;font-style:italic;line-height:1.5}.plus-pitch-lead{color:#f8fafc;margin-bottom:8px;font-size:.9rem;font-weight:700}.plus-pitch-body{color:#94a3b8;margin-bottom:16px;font-size:.78rem;line-height:1.5}.plus-price-line{align-items:baseline;gap:4px;margin:16px 0 12px;display:flex}.plus-price{color:#f59e0b;font-size:2rem;font-weight:900}.plus-price-period{color:#94a3b8;font-size:.9rem}.plus-price-note{color:#475569;margin-left:4px;font-size:.7rem}.plus-pay-btn{color:#0f172a;letter-spacing:.08em;cursor:pointer;text-align:center;background:linear-gradient(135deg,#f59e0b,#fbbf24);border:none;border-radius:12px;width:100%;margin-bottom:10px;padding:14px;font-size:.9rem;font-weight:900;text-decoration:none;transition:opacity .15s,transform .1s;display:block}.plus-pay-btn:hover{opacity:.9}.plus-pay-btn:active{transform:scale(.98)}.plus-fine-print{color:#475569;text-align:center;font-size:.62rem;line-height:1.4}.plus-settings-btn{color:#f59e0b;cursor:pointer;letter-spacing:.04em;background:0 0;border:1px solid #f59e0b66;border-radius:6px;padding:5px 10px;font-size:.68rem;font-weight:700;transition:border-color .15s,background .15s}.plus-settings-btn:hover{background:#f59e0b1a;border-color:#f59e0b}@media(max-width:380px){.letter-cell{width:24px;height:28px;font-size:.7rem}.key{min-width:26px;height:38px;font-size:.72rem}.key-wide{min-width:44px}.feedback-tile{width:28px;height:30px;font-size:.75rem}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
.lb-tabs{display:flex;gap:4px;margin-bottom:12px;padding:0 2px}.lb-tab{flex:1;background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;color:#94a3b8;font-size:.7rem;font-weight:600;padding:8px 0;cursor:pointer;transition:all .15s;text-align:center}.lb-tab:hover{background:#ffffff12;color:#f8fafc}.lb-tab.active{background:#22c55e14;border-color:#22c55e66;color:#22c55e}.lb-tab-content{min-height:60px}.lb-row-best{background:#22c55e0d;border-color:#22c55e33}.lb-row-best .lb-row-time{color:#22c55e}.lb-row-grade{font-size:.6rem;font-weight:800;border-radius:4px;padding:2px 5px;flex-shrink:0;text-align:center;min-width:20px}.lb-grade-s{color:#22c55e;background:#22c55e1a}.lb-grade-a{color:#4caf50;background:#4caf501a}.lb-grade-b{color:#66bb6a;background:#66bb6a1a}.lb-grade-c{color:#ff9800;background:#ff98001a}.lb-grade-d{color:#f44336;background:#f443361a}.lb-grade-f{color:#e91e63;background:#e91e631a}.lb-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:16px}.lb-stat-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:10px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:2px}.lb-stat-highlight{background:#22c55e0a;border-color:#22c55e33}.lb-stat-value{color:#f8fafc;font-size:1.4rem;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.2}.lb-stat-highlight .lb-stat-value{color:#22c55e}.lb-stat-label{color:#64748b;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.lb-stats-breakdown{background:#ffffff06;border:1px solid #ffffff0d;border-radius:10px;padding:12px 14px}.lb-breakdown-title{color:#94a3b8;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.lb-breakdown-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #ffffff08;color:#94a3b8;font-size:.72rem}.lb-breakdown-row:last-child{border-bottom:none}.lb-breakdown-row span:last-child{color:#f8fafc;font-weight:700;font-variant-numeric:tabular-nums}@media (min-width:420px){.lb-stats-grid{grid-template-columns:repeat(4,1fr)}}

/* === v8.5 Desktop responsive layout === */
@media (min-width: 768px) {
  .game-app {
    max-width: 680px;
  }
  .words-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
  }
  .word-card {
    padding: 8px 10px;
  }
  .word-card .word-label {
    font-size: 0.85rem;
  }
  .word-card .letter-boxes {
    gap: 3px;
  }
  .word-card .letter-box {
    width: 26px;
    height: 26px;
    font-size: 0.8rem;
  }
}

@media (min-width: 1200px) {
  .game-app {
    max-width: 900px;
  }
  .words-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
  }
  .word-card {
    padding: 10px 12px;
  }
  .word-card .word-label {
    font-size: 0.95rem;
  }
  .word-card .letter-box {
    width: 30px;
    height: 30px;
    font-size: 0.9rem;
  }
}

@media (min-width: 1600px) {
  .game-app {
    max-width: 1100px;
  }
  .words-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
  }
  .word-card .word-label {
    font-size: 1rem;
  }
  .word-card .letter-box {
    width: 34px;
    height: 34px;
    font-size: 1rem;
  }
}

/* Desktop: keyboard should not eat screen real estate */
@media (min-width: 768px) {
  .keyboard-section {
    max-width: 500px;
    margin: 0 auto;
    border-radius: 12px 12px 0 0;
  }
}

/* Ensure all 26 words visible on desktop without scrolling */
@media (min-width: 1200px) {
  .words-section {
    overflow-y: visible;
    flex: none;
  }
}

/* Onboarding card wider on desktop */
@media (min-width: 768px) {
  .onboarding-card {
    max-width: 560px;
  }
}

/* === v8.5 Onboarding step styles === */
.onboarding-steps {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.onboard-step {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.onboard-num {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  background: #22C55E;
  color: #0F172A;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 0.85rem;
}
.onboard-step div {
  font-size: 0.88rem;
  line-height: 1.45;
  color: #CBD5E1;
}
.onboard-step strong {
  color: #F8FAFC;
}
.onboard-step em {
  color: #22C55E;
  font-style: normal;
  font-weight: 600;
}

/* === v8.5 Tutorial modal styles === */
.how-to-play-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 4px;
}
.tutorial-card {
  max-width: 420px;
  max-height: 85dvh;
  overflow-y: auto;
}
.tutorial-steps {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding-bottom: 8px;
}
.tut-step {
  border: 1px solid #ffffff14;
  border-radius: 12px;
  padding: 14px;
  background: #ffffff08;
}
.tut-step-highlight {
  border-color: #22C55E44;
  background: #22C55E0A;
}
.tut-label {
  font-weight: 700;
  font-size: 0.95rem;
  color: #F8FAFC;
  margin-bottom: 10px;
}
.tut-desc {
  font-size: 0.82rem;
  color: #94A3B8;
  line-height: 1.5;
  margin-top: 10px;
}
.tut-desc strong {
  color: #22C55E;
}
.tut-desc em {
  color: #EAB308;
  font-style: normal;
}
.tut-visual {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
}

/* Input demo */
.tut-input-demo {
  display: flex;
  gap: 4px;
  align-items: center;
}
.tut-input-box {
  width: 32px;
  height: 36px;
  background: #1E293B;
  border: 2px solid #334155;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1rem;
  color: #F8FAFC;
}
.tut-go-btn {
  margin-left: 8px;
  background: #22C55E;
  color: #0F172A;
  font-weight: 800;
  font-size: 0.75rem;
  padding: 8px 14px;
  border-radius: 8px;
}

/* Row demos */
.tut-row {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 260px;
}
.tut-row-letter {
  width: 24px;
  height: 24px;
  background: #334155;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 0.7rem;
  color: #94A3B8;
  flex-shrink: 0;
}
.tut-row-complete .tut-row-letter {
  background: #22C55E33;
  color: #22C55E;
}
.tut-tiles {
  display: flex;
  gap: 3px;
  flex: 1;
}
.tut-tile {
  flex: 1;
  height: 30px;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 0.8rem;
}
.tut-green {
  background: #22C55E;
  color: #0F172A;
}
.tut-yellow {
  background: #EAB308;
  color: #0F172A;
}
.tut-gray {
  background: #334155;
  color: #64748B;
}
.tut-dim {
  background: #1E293B;
  color: #475569;
  border: 1px solid #334155;
}
.tut-cascade {
  background: #22C55E33;
  color: #22C55E;
  border: 1px solid #22C55E66;
  animation: cascadeGlow 1.5s ease-in-out infinite alternate;
}
@keyframes cascadeGlow {
  from { box-shadow: 0 0 4px #22C55E22; }
  to { box-shadow: 0 0 12px #22C55E44; }
}

/* Cascade arrow */
.tut-cascade-arrow {
  font-size: 0.65rem;
  color: #22C55E;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 700;
  padding: 4px 0;
  text-align: center;
  position: relative;
}
.tut-cascade-arrow::before {
  content: "↓  ↓  ↓  ";
}
.tut-cascade-arrow::after {
  content: "  ↓  ↓  ↓";
}

/* Clue legend */
.tut-clue-legend {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 10px;
  font-size: 0.78rem;
  color: #CBD5E1;
}
.tut-clue-legend > span {
  display: flex;
  align-items: center;
  gap: 8px;
}
.tut-dot {
  width: 12px;
  height: 12px;
  border-radius: 3px;
  flex-shrink: 0;
}
.tut-dot-green { background: #22C55E; }
.tut-dot-yellow { background: #EAB308; }
.tut-dot-gray { background: #334155; }

@media (min-width: 768px) {
  .tutorial-card {
    max-width: 520px;
  }
  .tut-tile {
    height: 36px;
    font-size: 0.9rem;
  }
  .tut-input-box {
    width: 38px;
    height: 42px;
    font-size: 1.1rem;
  }
}

/* === v8.7 Interactive Coach Tutorial === */
.interactive-coach {
  background: linear-gradient(135deg, #1a2e1a, #0f1f0f);
  border: 1px solid #22c55e66;
  border-radius: 10px;
  padding: 10px 14px;
  margin: 6px 0 2px;
  animation: coachSlideIn 0.4s cubic-bezier(0.22,1,0.36,1);
}
.coach-body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.coach-msg {
  font-size: 0.82rem;
  color: #d1fae5;
  line-height: 1.4;
  animation: coachMsgIn 0.3s ease;
}
.coach-msg .coach-word {
  font-family: monospace;
  font-weight: 700;
  color: #22c55e;
  background: #22c55e1a;
  border-radius: 4px;
  padding: 1px 5px;
  letter-spacing: 0.1em;
}
.coach-skip {
  background: transparent;
  border: 1px solid #22c55e44;
  border-radius: 6px;
  color: #22c55e99;
  cursor: pointer;
  font-size: 0.7rem;
  padding: 3px 8px;
  white-space: nowrap;
  flex-shrink: 0;
  transition: all 0.15s;
}
.coach-skip:hover {
  border-color: #22c55e;
  color: #22c55e;
}
#word-input.coach-pulse-input {
  animation: coachInputPulse 0.8s ease 3;
  border-color: #22c55e !important;
}
@keyframes coachSlideIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes coachFadeOut {
  from { opacity: 1; transform: translateY(0); }
  to { opacity: 0; transform: translateY(-4px); }
}
@keyframes coachMsgIn {
  from { opacity: 0; transform: translateX(4px); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes coachInputPulse {
  0%, 100% { box-shadow: none; }
  50% { box-shadow: 0 0 0 3px #22c55e55; }
}
