.arrow{color:var(--primary-navy);pointer-events:none;z-index:10;margin:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.arrow-4{font-size:32px}.arrow-5{font-size:26px}.arrow-icon{width:1em;height:1em}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:20;background:#0a0e1899;place-items:stretch stretch;padding:0;display:grid;position:fixed;inset:0}.result-modal{background-image:radial-gradient(var(--neutral-cream), #e2cc9d);place-items:center;gap:20px;width:100%;height:100%;max-height:none;padding:24px;display:grid;overflow:auto}.result-modal__header{justify-content:space-between;align-items:flex-start;gap:16px;width:96%;margin:0 auto;display:flex}.result-modal__footer{justify-content:center;align-items:center;gap:16px;display:flex}.result-modal__footer button{background:var(--primary-navy);color:#fff;cursor:pointer;border:1px solid #b6b7bc;border-radius:16px;padding:10px 14px}.result-modal__eyebrow{color:var(--muted-text);margin:0 0 4px;font-size:.9em}.result-modal__meta{color:var(--muted-text);margin:0}.result-modal__body{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;width:96%;margin:0 auto;display:grid}.result-card{background:var(--dark-cream);box-shadow:var(--shadow-md);border-radius:18px;flex-direction:column;gap:8px;padding:20px;display:flex}.result-card__topline{grid-template-columns:1fr auto;align-items:start;gap:16px;display:grid}.result-card__topline h3,.result-card h4{margin:0}.result-card__meta{color:#6c7285;margin:4px 0 0;font-size:.95em}.result-card__section{gap:12px;display:grid}.result-card__section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.result-card__word-count{background:var(--secondary-teal);color:#1f2430;border-radius:999px;justify-content:center;align-items:center;min-width:32px;height:32px;font-size:.88em;font-weight:700;display:inline-flex}.result-card__accepted-words{background-color:var(--neutral-cream);border-radius:14px;max-height:196px;padding-right:6px;overflow-y:auto}.result-card__accepted-words::-webkit-scrollbar{width:8px;height:8px}.result-card__accepted-words::-webkit-scrollbar-thumb{background:#5f6c9159;border-radius:999px}.result-card__accepted-words::-webkit-scrollbar-track{background:0 0}.word-list{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:5px;margin:0;padding:12px;list-style:none;display:grid}.word-list li{color:var(--primary-navy);font-size:.95em}@media (width<=480px){.result-modal{padding:15px;font-size:.8rem}#round-result-title{margin-bottom:0}.result-card__accepted-words{max-height:120px}.word-list{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.result-card{padding:10px}}.backdrop{z-index:20;background:#0a0e1880;place-items:center;padding:0;display:grid;position:fixed;inset:0}.backdrop p{background-color:var(--primary-navy);color:#fff;border-radius:12px;margin:0;padding:10px}.game-shell{place-items:center;gap:min(2vh,20px);width:95%;max-width:550px;display:grid}.game-board-panel{gap:min(2vh,16px);width:100%;display:grid}.game-status-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.game-eyebrow{color:var(--primary-navy);margin:0 0 4px;font-size:.9rem}.game-status-row h2,.game-sidebar h3{margin:0}.game-timer{background:var(--primary-navy);min-width:72px;color:var(--neutral-cream);text-align:center;border-radius:999px;padding:10px 12px;font-weight:700}.game-grid-container{justify-content:space-between;gap:3%;width:100%;display:flex}.game-sidebar{flex-direction:column;justify-content:space-between;gap:8px;width:25%;height:100%;display:flex}.letter-grid{background-color:var(--dark-cream);aspect-ratio:1;touch-action:none;flex:1;gap:8px;padding:10px;font-size:2rem;display:grid}.letter-grid-4{grid-template-columns:repeat(4,1fr)}.letter-grid-5{grid-template-columns:repeat(5,1fr)}.dice-container{background-color:var(--neutral-cream);border-radius:12px;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 5px #0000001a}.dice-container-4{padding:min(8px,1vw)}.dice-container-5{padding:min(6px,.8vw)}.letter-grid .letter{text-transform:uppercase;width:100%;height:100%;color:var(--primary-navy);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;background-color:#fafafa;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.letter-grid .letter-4{font-size:1em}.letter-grid .letter-5{font-size:.8em}.letter-grid .active{background-color:#0000}.word-container{contain:size;background-color:var(--dark-cream);flex:1;max-width:95%;padding:min(10px,1vw);overflow:auto}.word-container::-webkit-scrollbar{width:8px;height:8px}.word-container::-webkit-scrollbar-thumb{background:#5f6c9159;border-radius:999px}.word-container::-webkit-scrollbar-track{background:0 0}.word-container ul{margin-top:2px;padding-left:0;list-style-type:none}.score-container{background-color:var(--dark-cream);gap:8px;max-width:95%;height:25%;margin:0;padding:min(10px,1vw);display:grid}.word-entry-row{position:relative}.word-entry-row .score-value{font-size:1.5rem;font-weight:500}.word-input{background-color:#0000;border:1px solid #0000;outline:none;max-width:200px;padding-left:0;font-size:1.2rem;font-weight:540}.word-input::placeholder{color:var(--muted-text)}.game-sidebar h3{font-size:1rem;font-weight:600}.score-value{margin:0;font-size:1.5rem;font-weight:700}.invalid{animation:1s ease-in-out flash-red}.points-fly{pointer-events:none;width:100%;color:var(--secondary-teal);text-shadow:0 2px 6px #0000001f;justify-content:flex-start;font-size:1.5rem;font-weight:700;animation:1s ease-out forwards slideRight;display:flex;position:absolute;top:50%;left:0;transform:translateY(-50%)}#board-changer{justify-content:space-between;gap:5px;font-size:.8rem;display:flex}#board-changer button{background-color:var(--primary-navy);color:var(--neutral-cream);cursor:pointer;border:#0000;flex:1;padding:5px;font-size:1em}@keyframes flash-red{0%{color:#ff0000db}50%{color:#0000}to{color:#ff0000db}}@keyframes slideRight{0%{opacity:1;transform:translateY(-50%)}70%{opacity:1}to{opacity:0;transform:translate(100%,-50%)}}@media (width<=520px){#board-changer{font-size:.64rem}.word-input{font-size:1rem}.game-eyebrow{font-size:.8rem}.game-timer{padding:8px 10px;font-size:.8rem}.letter-grid{font-size:1.5rem}.game-grid-container{flex-direction:column}.score-value{font-size:1rem}.game-sidebar{flex-direction:row-reverse;width:100%;height:80px}.muted-text,.game-sidebar h3{font-size:.7rem}.score-container{width:25%;height:90%}.word-container{height:90%;overflow-y:hidden}.word-container li{margin-right:4px;font-size:.8rem;display:inline}.game-sidebar__panel{position:static}.letter-grid .letter{width:85%;height:85%}.letter-grid-5{gap:5px}}.header{background:var(--dark-cream);justify-content:center;align-items:center;padding:12px;display:flex}.header-nav{justify-content:center;align-items:center;gap:24px;display:flex}.header-button{color:var(--primary-navy);cursor:pointer;background:0 0;border:none;padding:8px 0;font-size:16px;font-weight:500;text-decoration:none;transition:color .2s;position:relative}.header-button:after{content:"";transform-origin:50%;background:currentColor;height:2px;transition:transform .2s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.header-button.active:after{transform:scaleX(1)}.header-button:hover{opacity:.8}@media (width<=480px){.header{padding:8px}.header-button{padding:6px 0;font-size:12px}}*{box-sizing:border-box}.app{flex:1;justify-content:center;align-items:center;padding:10px;display:flex;position:relative}.error-display{background-color:var(--primary-navy);color:#fff;border-radius:5px;padding:10px 15px;position:absolute;top:5%;left:50%;transform:translate(-50%)}.copy-toast{justify-content:center;display:flex;background-color:var(--primary-navy)!important;color:#fff!important}.muted-text{color:var(--muted-text);margin:0}@media (width<=480px){.app{padding:5px}.error-display{padding:8px 12px;font-size:.8rem}}#create-form{background:var(--dark-cream);box-shadow:var(--shadow-lg);border-radius:20px;gap:12px;padding:20px;display:grid}#create-form h2{margin:0;font-size:1.2rem}.radios{border:none;flex-direction:column;margin:0;padding:0;display:flex}.label-container{justify-content:flex-start;gap:10px;display:flex}.radios label{align-items:center;gap:8px;display:flex}#join-form{background:var(--dark-cream);box-shadow:var(--shadow-lg);border-radius:20px;gap:12px;padding:20px;display:grid}#join-form h2{margin:0;font-size:1.2rem}.lobby-shell{width:98%;max-width:900px}.forms-row{align-items:stretch;gap:24px;width:100%;display:flex}.form-slot{flex:1;display:flex}.form-slot>*{flex:1}#join-form button,#create-form button{border:1px solid var(--primary-navy);background:var(--primary-navy);color:#fff;font:inherit;cursor:pointer;border-radius:8px;padding:10px 14px}.field{gap:6px;display:grid}.field input{border:1px solid var(--primary-navy);background:var(--neutral-cream);width:100%;font:inherit;border-radius:8px;padding:9px 10px;font-size:16px!important}@media (width<=760px){.forms-row{flex-direction:column}.form-slot{min-width:unset}}@media (width<=480px){#join-form,#create-form{padding:16px;font-size:.8rem}#join-form h2,#create-form h2{font-size:.96rem}.field input{padding:7px 8px}#join-form button,#create-form button{padding:8px 11px;font-size:.8rem}}.starting-shell{place-items:center;gap:16px;width:96%;max-width:400px;display:grid}.starting-shell h2{font-size:1.2rem}.waiting-shell{gap:16px;width:96%;max-width:460px;display:grid}.code-container{justify-content:center;gap:7px;display:flex}.code-container button{background-color:var(--secondary-teal);cursor:pointer;border:#0000;align-items:center;gap:5px;padding:5px 7px;font-size:.8em;display:flex}.copy-icon{width:1.6em;height:1.6em}.star-icon{width:1.2em;height:1.2em}.room-code{color:#fff;background-color:var(--secondary-teal);border-radius:5px;align-items:center;gap:10px;margin:0;padding:5px 5px 5px 10px;display:flex}.room-code>span{font-weight:700}.panel{background:var(--dark-cream);box-shadow:var(--shadow-md);border-radius:10px;gap:12px;padding:16px;display:grid}.panel h2{margin:0}.players-list{gap:6px;margin:0;padding:8px;list-style:none;display:grid}.players-list li{align-items:center;gap:8px;font-size:1em;display:flex}.waiting-text{text-align:center;color:var(--muted-text);margin:0;font-size:1em}.countdown{color:#1f2430;text-align:center;margin:0;font-size:3rem}.start-game{background:var(--primary-navy);color:#fff;font:inherit;cursor:pointer;border:1px solid #b6b7bc;border-radius:8px;padding:10px 14px;font-size:1em}.disabled:hover{filter:brightness(80%);cursor:not-allowed}.loader-container{gap:20px;display:grid}.loader-container-4{grid-template-columns:repeat(4,1fr)}.loader-container-5{grid-template-columns:repeat(5,1fr)}.loader{width:48px;height:48px;display:inline-block;position:relative}.loader:after,.loader:before{content:"";box-sizing:border-box;border:2px solid #fff;width:48px;height:48px;animation:2s ease-in-out infinite rotation;position:absolute;top:0;left:0}.loader:after{border-color:var(--secondary-teal);animation-delay:1s}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=480px){.starting-shell h2{font-size:1.2rem}.panel{font-size:.8rem}.room-code{justify-content:center;font-size:.8rem}.countdown{font-size:2.4rem}}.error-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.error-modal{background:var(--dark-cream);text-align:center;border-radius:8px;width:90%;max-width:420px;padding:24px;box-shadow:0 10px 30px #0006}.error-modal-icon{color:#ef4444;justify-content:center;margin-bottom:12px;display:flex}.error-modal-message{margin-bottom:18px;font-size:16px}.error-modal-actions{justify-content:center;display:flex}.error-modal-button{background:var(--primary-navy);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 16px;font-weight:600}.error-modal-button:hover{filter:brightness(.95)}.leaderboard{flex-direction:column;justify-items:center;gap:16px;width:95%;max-width:1000px;display:flex}.leaderboard__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.leaderboard__list .right-data{justify-content:space-between;width:30%;display:flex}.leaderboard__list .left-data{gap:25%;width:30%;display:flex}.leaderboard__list li{justify-content:space-between;gap:10px;margin:0;padding:10px;font-size:1.2rem;display:flex}.leaderboard__list .table__header{font-size:1rem}.leaderboard__list .--first{aspect-ratio:1;background-color:#d4af37;border-radius:50%}.leaderboard__list .--second{aspect-ratio:1;background-color:silver;border-radius:50%}.leaderboard__list .--third{aspect-ratio:1;background-color:#cd7f32;border-radius:50%}.leaderboard__list .leaderboard__rank{text-align:center}.leaderboard .leaderboard__row:nth-child(2n){background:var(--dark-cream)}.leaderboard__row{font-weight:650;animation:.5s ease-out forwards slideInUp}.leaderboard_row:nth-child(n){animation-delay:calc(.1s * (var(--index,0)))}.leaderboard__header h3{margin:0;font-size:1.4rem}.leaderboard__footer{justify-content:flex-end;gap:10px;display:flex}.new-game{background:var(--primary-navy);color:#fff;cursor:pointer;border:1px solid #b6b7bc;border-radius:16px;padding:10px 14px}.exit-lobby{background:var(--secondary-teal);color:#fff;cursor:pointer;border:1px solid #b6b7bc;border-radius:16px;padding:10px 14px}@keyframes slideInUp{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){.leaderboard__list .table__header,.exit-lobby,.new-game{font-size:.8rem}.leaderboard__list li{font-size:1rem}.leaderboard__header h3{font-size:1.2rem}.leaderboard__list .right-data{width:40%}.leaderboard__score{grid-column:2}}:root{--primary-navy:#170c79;--secondary-teal:#56b6c6;--neutral-cream:#efe3ca;--dark-cream:#edd5a1;--muted-text:#6c7285;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;color:var(--primary-navy);background-image:radial-gradient(var(--neutral-cream), #e2cc9d);font-family:Geneva,Verdana,sans-serif}body{margin:0;position:relative}#root{flex-direction:column;min-height:100dvh;display:flex;overflow-y:hidden}button,input{font:inherit}
