*{box-sizing:border-box;margin:0;padding:0}body{font-family:Libre Franklin,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#121213;color:#fff;line-height:1.6;padding:20px;min-height:100vh}.container{max-width:800px;margin:0 auto}.header{text-align:center;margin-bottom:30px}.title{font-size:2.53rem;font-weight:700;margin-bottom:-5px;color:#fff;text-shadow:0 0 6px rgba(236,212,107,.14),0 0 14px rgba(236,212,107,.08),0 6px 18px rgba(0,0,0,.45);will-change:transform,text-shadow;animation:title-glow 6s ease-in-out infinite alternate,title-float 6s ease-in-out infinite}.subtitle{font-size:.875rem;color:#818384;margin-bottom:20px;font-weight:100;font-style:italic}.subtitle a{color:#86847c;text-decoration:none;font-weight:100;font-style:italic}.subtitle a:hover,.subtitle a:focus{text-decoration:underline}.conversation-section{background-color:#1a1a1b;border-radius:8px;padding:25px;margin-bottom:30px;border:1px solid #3a3a3c}.conversation-title{font-size:1.3rem;font-weight:700;color:#fff;margin-bottom:20px;text-align:center}.conversation-line{margin-bottom:15px;letter-spacing:.008rem}.speaker{font-weight:700;color:#6aaa64;margin-bottom:5px}.text-row{display:flex;gap:15px;align-items:flex-start;font-size:large}.foreign-text{color:#fff;flex:1}.translation{color:#fff;font-weight:400;flex:1;border-left:#818384 1px solid;padding-left:.5rem;display:inline-block}.challenge-section{background-color:#1a1a1b;border-radius:8px;padding:25px;margin-bottom:30px;border:1px solid #3a3a3c}.challenge-title{font-size:1.3rem;font-weight:700;color:#fff;margin-bottom:15px;text-align:center}.challenge-text{font-size:1.3rem;font-weight:700;color:#ecd46b;text-align:center;padding:15px;margin-top:25px;background-color:#262626;border-radius:6px;border:2px solid #3a3a3c}.input-box{width:100%;padding:12px;font-size:1rem;border:2px solid #3a3a3c;border-radius:4px;background-color:#262626;color:#fff;margin-bottom:10px}.input-box:focus{outline:none;border-color:#6aaa64}.buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.btn{padding:12px 20px;font-size:1rem;font-weight:700;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease}.btn-check{background-color:#6aaa64;color:#fff}.btn-check:hover:not(:disabled){background-color:#5a9a54}.btn-hint{background-color:#c9b458;color:#fff}.btn-hint:hover:not(:disabled){background-color:#b9a448}.btn-hint:disabled{background-color:#3a3a3c;color:#818384;cursor:not-allowed}.btn-reset{background-color:#787c7e;color:#fff}.btn-reset:hover{background-color:#686c6e}.hints-section{margin-bottom:20px}.hints-title{font-weight:700;color:#c9b458;margin-bottom:10px}.hints-list{background-color:#262626;border-radius:6px;padding:15px;min-height:50px}.hint-item{color:#fff;margin-bottom:5px}.hints-counter{color:#818384;font-size:.9rem;text-align:center;margin-top:10px}.guesses-section{margin-bottom:20px}.guesses-title{font-weight:700;color:#fff;margin-bottom:15px;text-align:center}.guess-row{display:flex;flex-wrap:wrap;gap:8px;padding-top:8px;margin-bottom:8px;justify-content:flex-start;border-top:#81838414 1px solid}.word-tile{padding:10px 2px;border-radius:4px;font-weight:600;min-width:90px;text-align:center;border:2px solid #3a3a3c;text-transform:uppercase}.word-correct{background-color:#6aaa64;color:#fff;border:2px solid #6aaa64}.word-wrong-position{background-color:#c9b458;color:#fff;border-color:#c9b458}.word-not-found{background-color:#787c7e;color:#fff;border-color:#787c7e}.win-message{background-color:#6aaa64;color:#fff;padding:20px;border-radius:8px;text-align:center;font-weight:700;font-size:1.2rem;margin-bottom:20px}.game-info{text-align:center;color:#818384;font-size:.9rem;margin-top:20px}.challenge-word{position:relative;cursor:pointer;border-bottom:1px dotted #ecd46b}.challenge-word[data-hint]:hover:after{content:attr(data-hint);position:absolute;left:50%;transform:translate(-50%);bottom:120%;background:#262626;color:#ecd46b;padding:6px 12px;border-radius:6px;white-space:nowrap;font-size:.95rem;z-index:2100;box-shadow:0 2px 8px #0006;pointer-events:auto}.challenge-word[data-hint]:after{opacity:0;transition:opacity .15s}.challenge-word[data-hint]:hover:after{opacity:1}.selection-highlight{background:#f2d7617e;color:#fff;padding:0;border-radius:3px;box-shadow:0 1px #00000040 inset;transition:background .12s;cursor:text;position:relative;z-index:2200}@media (max-width: 600px){.title{font-size:2rem}.buttons{display:flex;justify-content:center}.word-tile{min-width:50px;padding:8px;font-size:.9rem}.text-row{font-size:.92rem}.challenge-text{font-size:1.2rem}}.guess-row .guess-tile{background-color:#121213;border:2px solid #565758}.guesses-placeholder{min-height:58px;display:flex;align-items:center;justify-content:center;margin:0}.flip-animating .word-tile.flip{animation:flip-wordle-x .7s cubic-bezier(.4,.2,.2,1);backface-visibility:hidden;perspective:400px;animation-fill-mode:forwards;will-change:transform,background-color}.flip-animating .word-tile.flip-correct{animation:flip-wordle-correct .7s cubic-bezier(.4,.2,.2,1);backface-visibility:hidden;perspective:400px;animation-fill-mode:forwards;will-change:transform,background-color}.flip-animating .word-tile.flip-wrong-position{animation:flip-wordle-yellow .7s cubic-bezier(.4,.2,.2,1);backface-visibility:hidden;perspective:400px;animation-fill-mode:forwards;will-change:transform,background-color}.flip-animating .word-tile.flip-not-found{animation:flip-wordle-grey .7s cubic-bezier(.4,.2,.2,1);backface-visibility:hidden;perspective:400px;animation-fill-mode:forwards;will-change:transform,background-color}.win-panel-share-date{font-size:.8rem;color:#818384;text-align:center;margin-top:12px}@keyframes flip-wordle-correct{0%{transform:rotateX(0);background-color:#121213;border:2px solid #565758}49%{background-color:#121213;border:2px solid #565758}50%{transform:rotateX(90deg);background-color:#6aaa64;color:#fff;border:2px solid #6aaa64}to{transform:rotateX(0);background-color:#6aaa64;color:#fff;border:2px solid #6aaa64;font-weight:600}}@keyframes flip-wordle-yellow{0%{transform:rotateX(0);background-color:#121213;border:2px solid #565758}49%{background-color:#121213;border:2px solid #565758}50%{transform:rotateX(90deg);background-color:#c9b458;color:#fff;border:2px solid #c9b458}to{transform:rotateX(0);background-color:#c9b458;color:#fff;border:2px solid #c9b458;font-weight:600}}@keyframes flip-wordle-grey{0%{transform:rotateX(0);background-color:#121213;border:2px solid #565758}49%{background-color:#121213;border:2px solid #565758}50%{transform:rotateX(90deg);background-color:#787c7e;color:#fff;border:2px solid #787c7e}to{transform:rotateX(0);background-color:#787c7e;color:#fff;border:2px solid #787c7e;font-weight:600}}.win-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:flex-start;justify-content:center;padding-top:6vh;z-index:1000;opacity:0;pointer-events:none;transition:opacity .25s ease}.win-overlay.win-overlay-visible{opacity:1;pointer-events:auto}.win-panel{width:min(760px,94%);max-width:760px;background:linear-gradient(180deg,#121213,#1f1f20);border-radius:10px;border:1px solid #3a3a3c;padding:20px;box-shadow:0 10px 30px #0009;transform:translateY(-20px) scale(.99);opacity:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .25s ease}.win-panel-visible{transform:translateY(0) scale(1);opacity:1}.win-panel-title{font-size:1.4rem;font-weight:800;color:#fff;text-align:center;margin-bottom:10px}.win-panel-stats{text-align:center;color:#ecd46b;font-weight:700;margin-bottom:12px}.win-panel-stats div{margin:6px 0;color:#fff;font-weight:600}.win-panel-challenge{padding:12px;color:#ecd46b;font-weight:700;text-align:center;background:transparent}.win-panel-challenge-group{margin-top:12px;background:#262626;border-radius:6px;border:1px solid #3a3a3c;overflow:visible}.win-panel-challenge+.win-panel-answer{border-top:1px solid #3a3a3c}.win-panel-answer{padding:10px 12px;background:transparent;margin:0;color:#fff;text-align:center;font-weight:600}.win-panel-answer strong{color:#ecd46b;margin-right:6px}.win-panel-buttons{display:flex;gap:10px;justify-content:center;margin-top:16px;flex-wrap:wrap}.win-panel .btn{min-width:initial}@media (max-width: 520px){.win-panel{padding:14px}.win-panel-stats{font-size:.95rem}.win-panel-title{font-size:1.15rem}}.win-bounce{animation:win-bounce .8s cubic-bezier(.2,.7,.2,1);will-change:transform}@keyframes win-bounce{0%{transform:translateY(0)}25%{transform:translateY(-18px)}50%{transform:translateY(4px)}75%{transform:translateY(-6px)}to{transform:translateY(0)}}.win-panel-share{margin-top:14px;padding:10px;border-radius:8px;background:linear-gradient(180deg,#1a1a1b,#151515);border:1px solid #2f2f31}.win-panel-share-title{color:#c9b458;font-weight:700;text-align:center;margin-bottom:8px}.win-panel-share-preview{display:flex;flex-direction:column;gap:6px;align-items:center;padding:6px 0}.share-line{display:flex;gap:8px;justify-content:center;align-items:center}.share-square{width:18px;height:18px;border-radius:3px;display:inline-block;border:1px solid #2b2b2b}.share-green{background:#6aaa64;border-color:#6aaa64}.share-yellow{background:#c9b458;border-color:#c9b458}.share-grey{background:#787c7e;border-color:#787c7e}.win-panel-share-buttons{display:flex;gap:8px;justify-content:center;margin-top:10px;flex-wrap:wrap}.win-share-btn{width:36px;height:36px;padding:6px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid #3a3a3c;color:#fff;cursor:pointer;transition:background .16s,border-color .16s,transform .12s;box-shadow:none}.win-share-btn svg{width:18px;height:18px;display:block}.win-share-btn:hover,.win-share-btn:focus{background:#ffffff08;border-color:#565758;transform:translateY(-1px)}.win-share-btn.copied{background:#6aaa64;border-color:#6aaa64;color:#fff}.win-share-btn.error{background:#a94242;border-color:#a94242;color:#fff}@keyframes title-glow{0%{text-shadow:0 0 3px rgba(236,212,107,.12),0 0 8px rgba(236,212,107,.06),0 4px 10px rgba(0,0,0,.45)}60%{text-shadow:0 0 14px rgba(236,212,107,.36),0 0 30px rgba(236,212,107,.18),0 10px 26px rgba(0,0,0,.5)}to{text-shadow:0 0 6px rgba(236,212,107,.14),0 0 14px rgba(236,212,107,.08),0 6px 18px rgba(0,0,0,.45)}}@media (prefers-reduced-motion: reduce){.title{animation:none;transition:none}}
