.fivex5-main{flex:1;display:flex;flex-direction:column;align-items:center;padding:calc(var(--space-16) + var(--space-2)) var(--space-4) var(--space-8);gap:var(--space-5);max-width:520px;margin:0 auto;width:100%}.timer-bar-track{width:100%;height:6px;background:var(--color-surface-overlay);border-radius:var(--radius-full);overflow:hidden}.timer-bar-fill{height:100%;background:var(--game-accent);border-radius:var(--radius-full);transition:width 1s linear,background .5s ease}.timer-bar-fill.urgent{background:var(--color-status-error)}.puzzle-header{width:100%;display:flex;flex-direction:column;gap:var(--space-3)}.puzzle-theme{font-family:var(--font-display);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--game-accent)}.solved-words{display:flex;gap:var(--space-2);flex-wrap:wrap}.solved-word-chip{font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;color:var(--color-text-primary);background:var(--game-accent-subtle);border:1px solid var(--game-accent);border-radius:var(--radius-badge);padding:var(--space-1) var(--space-3);letter-spacing:.05em;animation:chip-pop var(--duration-slow) var(--ease-spring)}.incorrect-guess-chip{font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;color:var(--color-text-tertiary);background:#ef444414;border:1px dashed rgba(239,68,68,.4);border-radius:var(--radius-badge);padding:var(--space-1) var(--space-3);letter-spacing:.05em;text-decoration:line-through;animation:chip-pop var(--duration-slow) var(--ease-spring);display:inline-block}@keyframes chip-pop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.word-slots{display:flex;gap:var(--space-2)}.word-slot{width:28px;height:28px;border-radius:var(--radius-md);border:1.5px solid var(--color-border-default);transition:all var(--duration-normal) ease}.word-slot--solved{background:var(--game-accent);border-color:var(--game-accent)}.letter-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;width:100%;max-width:340px;aspect-ratio:1}.letter-cell{aspect-ratio:1;border-radius:var(--radius-lg);border:1.5px solid var(--color-border-subtle);background:var(--color-surface-raised);font-family:var(--font-display);font-size:var(--text-xl);font-weight:800;color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-out);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;position:relative;overflow:hidden}.letter-cell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--game-accent);opacity:0;transition:opacity var(--duration-fast) ease;border-radius:inherit}.letter-cell:hover:not(.letter-cell--solved):not(.letter-cell--disabled){border-color:var(--game-accent);transform:scale(1.06)}.letter-cell:hover:not(.letter-cell--solved):after{opacity:.08}.letter-cell--selected{background:var(--game-accent-subtle);border-color:var(--game-accent);color:var(--game-accent);transform:scale(1.06)}.letter-cell--error{background:#ef444426;border-color:var(--color-status-error);color:var(--color-status-error);animation:cell-shake .3s var(--ease-out)}@keyframes cell-shake{0%,to{transform:translate(0) scale(1.06)}25%{transform:translate(-4px) scale(1.06)}75%{transform:translate(4px) scale(1.06)}}.letter-cell--solved{background:var(--game-accent-muted);border-color:transparent;color:#fff;cursor:default;transform:none;animation:cell-solve var(--duration-slow) var(--ease-spring)}@keyframes cell-solve{0%{transform:scale(1)}40%{transform:scale(1.15)}to{transform:scale(1)}}.letter-cell--hint{border-color:var(--color-amber-400);background:#fbbf241a;color:var(--color-amber-400);animation:hint-pulse .6s var(--ease-spring)}@keyframes hint-pulse{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}.letter-cell--disabled{opacity:.35;cursor:not-allowed}.current-selection{height:48px;display:flex;align-items:center;justify-content:center;gap:var(--space-1)}.selection-letter{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:800;color:var(--game-accent);animation:letter-appear var(--duration-fast) var(--ease-spring);letter-spacing:.1em}@keyframes letter-appear{0%{transform:scale(.5) translateY(8px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.selection-placeholder{font-size:var(--text-sm);color:var(--color-text-tertiary);letter-spacing:.06em}.action-row{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap;width:100%}#btn-solveone{color:var(--game-accent, #00f0ff);border-color:#00f0ff33}#btn-solveone:hover:not(:disabled){background:#00f0ff1a;border-color:var(--game-accent, #00f0ff);color:var(--game-accent, #00f0ff)}.result-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);transition:background-color .3s ease,backdrop-filter .3s ease;cursor:pointer}.result-card{background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-2xl);padding:var(--space-8);width:min(480px,100%);display:flex;flex-direction:column;align-items:center;gap:var(--space-5);animation:modal-rise var(--duration-slow) var(--ease-spring);transition:opacity .3s ease;cursor:default}.result-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:900;letter-spacing:-.03em}.result-title--win{color:var(--game-accent)}.result-title--loss{color:var(--color-text-secondary)}.result-time{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:900;color:var(--game-accent);letter-spacing:-.03em}.result-time__label{font-size:var(--text-sm);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.result-words{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center;width:100%}.result-word{font-family:var(--font-display);font-size:var(--text-base);font-weight:700;padding:var(--space-1-5) var(--space-4);border-radius:var(--radius-badge);letter-spacing:.04em}.result-word--found{background:var(--game-accent-subtle);border:1px solid var(--game-accent);color:var(--game-accent)}.result-word--missed{background:var(--color-surface-overlay);border:1px solid var(--color-border-subtle);color:var(--color-text-tertiary);text-decoration:line-through}.result-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center;width:100%}.fivex5-lobby{width:100%;background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-2xl);padding:var(--space-8);display:flex;flex-direction:column;align-items:center;gap:var(--space-5);text-align:center}.fivex5-lobby__title{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:900;letter-spacing:-.03em;line-height:1}.fivex5-lobby__desc{color:var(--color-text-secondary);font-size:var(--text-base);max-width:30ch;line-height:1.6}.how-to-grid{display:grid;grid-template-columns:repeat(5,40px);gap:3px;margin:0 auto}.how-to-cell{width:40px;height:40px;border-radius:var(--radius-md);border:1.5px solid var(--color-border-subtle);background:var(--color-surface-overlay);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:var(--text-base);font-weight:800;color:var(--color-text-primary)}.how-to-cell--highlight{background:var(--game-accent-subtle);border-color:var(--game-accent);color:var(--game-accent)}.shuffling-tile{animation:shuffle-spin .4s ease-in-out}@keyframes shuffle-spin{0%{transform:scale(1) rotate(0);opacity:1}25%{transform:scale(.85) rotate(-5deg);opacity:.8}50%{transform:scale(.7) rotate(5deg);opacity:.6}75%{transform:scale(.85) rotate(-5deg);opacity:.8}to{transform:scale(1) rotate(0);opacity:1}}.letter-cell--revealed-word{background:#a855f733!important;border-color:#a855f7!important;color:#c084fc!important;transform:scale(1.08)}.letter-cell--revealed-solve{background:#a855f71f!important;border-color:#a855f74d!important;color:#c084fc!important;cursor:default;transform:none;animation:cell-solve var(--duration-slow) var(--ease-spring)}
