.lobby-container{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;max-width:900px;margin:2em auto;padding:2em 1em;background:#1a1a1a;border-radius:16px;box-shadow:0 8px 32px #000a}.lobby-header{font-size:2.2em;font-weight:700;margin-bottom:.5em;color:inherit;text-align:center}.lobby-players-list{width:100%;margin:1.5em 0 2em;padding:0}.lobby-player-card{background:#232323;color:#fff;border-radius:8px;font-size:1em;font-weight:500;border:none;text-align:left;transition:background .2s}.lobby-player-card.admin{color:#646cff;font-weight:700;background:#232323}.lobby-actions{display:flex;gap:1em;margin-bottom:1.5em;flex-wrap:wrap;justify-content:center}.lobby-btn{font-size:1em;font-weight:500}.lobby-ruoli-list{background:#232323;border-radius:10px;padding:1em 1.5em;margin:1em 0;box-shadow:0 2px 12px #0003;color:#d6d6d6;font-size:1.05em;max-width:400px;text-align:left}.lobby-narratore{margin:1em 0 .5em;font-size:1.1em;color:#ffb347;font-weight:600;text-align:center}@media (max-width: 600px){.lobby-container{padding:1em .2em;max-width:98vw}.lobby-ruoli-list{padding:.7em .5em}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{position:relative;min-height:100vh;background:none}.background-overlay{position:fixed;inset:0;z-index:-1;background:linear-gradient(#141414a6,#141414a6),url(/background.jpg) center/cover no-repeat;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;justify-content:center;align-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;margin:3px;font-size:1em;font-weight:500;font-family:inherit;background-color:#2e2e2e;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}input[type=password]{font-family:inherit;font-size:1em;padding:.6em 1.2em;border-radius:8px;border:1px solid #ccc;background-color:#f9f9f9;color:#333}input[type=text]{padding:.7em 1.2em;border:none;border-radius:10px;font-size:1.08em;background:#1a1a1a;color:#fff;outline:none;box-shadow:0 2px 12px #0004;transition:box-shadow .2s,background .2s;margin:.5em 0}input[type=text]:focus{background:#23234a;box-shadow:0 0 0 2px #646cffcc,0 2px 12px #0004}input[type=checkbox]{appearance:none;-webkit-appearance:none;width:1.25em;height:1.25em;border-radius:5px;border:2px solid #bbb;background:#222;box-shadow:0 1px 6px #0003;vertical-align:middle;cursor:pointer;transition:box-shadow .2s,background .2s,border-color .2s;margin-right:.5em;display:inline-block;position:relative}input[type=checkbox]:focus{box-shadow:0 0 0 2px #fff6,0 1px 6px #0003;background:#333;border-color:#888}input[type=checkbox]:checked{background:#fff;border-color:#888}input[type=checkbox]:checked:after{content:"";display:block;position:absolute;left:50%;top:50%;width:.45em;height:.8em;border:solid #222;border-width:0 .18em .18em 0;transform:translate(-50%,-60%) rotate(45deg);box-sizing:border-box}input[type=checkbox]:active{filter:brightness(.85)}.modale-overlay{position:fixed;inset:0;background:#141414bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modale{position:relative;background:#1a1a1a;color:#fff;padding:2.5em 2em 2em;border-radius:16px;min-width:340px;max-width:95vw;max-height:90vh;box-shadow:0 8px 32px #000a;display:flex;flex-direction:column;align-items:center;overflow-y:auto;border:1px solid #333;animation:modaleIn .18s cubic-bezier(.4,1.6,.6,1) both;gap:1.2em}@keyframes modaleIn{0%{opacity:0;transform:translateY(40px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}p{color:#d6d6d6;font-size:1.08em;line-height:1.7;margin:.7em 0;letter-spacing:.01em;font-weight:400;background:none;border-radius:.5em;padding:0 .2em;transition:color .2s,background .2s}img{max-width:100%;border-radius:8px;box-shadow:0 2px 12px #0004;margin:.5em auto;background:#181818;object-fit:cover;transition:box-shadow .2s,filter .2s}img:hover,img:focus{box-shadow:0 4px 24px #0007;filter:brightness(1.08)}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.narratore-container{max-width:600px;margin:0 auto;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;background:#181818cc;border-radius:18px;box-shadow:0 4px 32px #0007;padding:2.5em 2em 2em;color:#fff;border:1px solid #333}.narratore-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5em}.narratore-personaggio{border:3px solid #646cff;border-radius:12px;padding:6px;display:inline-block;background:#23234a;box-shadow:0 0 8px 2px #646cff33;margin-bottom:1em}.narratore-personaggio img{width:100%;border-radius:8px;box-shadow:0 2px 12px #0004}.narratore-turno{display:flex;justify-content:center;gap:16px;margin-bottom:16px;align-items:center}.narratore-giocatori-grid{display:grid;gap:16px;margin:1.5em 0}.narratore-giocatore{text-align:center}.narratore-giocatore img{width:80px;height:80px;border-radius:50%;object-fit:cover;border:2px solid #ccc;box-shadow:0 2px 8px #0003;transition:box-shadow .2s,filter .2s;cursor:pointer}.narratore-giocatore img:hover{box-shadow:0 4px 24px #0007;filter:brightness(1.08)}.narratore-log-label{font-weight:500;color:#bdbdbd;margin-bottom:.3em;display:block}.narratore-log-textarea{width:90%;border-radius:8px;border:1px solid #333;background:#23234a;color:#fff;font-size:1em;padding:.7em 1.2em;box-shadow:0 2px 12px #0004;margin-top:.2em;resize:vertical;min-height:60px}.narratore-titolo-turno{font-size:2em;color:#646cff;margin-bottom:.5em;text-align:center}.narratore-narrazione{color:#d6d6d6;font-size:1.08em;line-height:1.7;margin:.7em 0 1.5em;letter-spacing:.01em;font-weight:400;background:none;border-radius:.5em;padding:0 .2em;transition:color .2s,background .2s}
