.lobby{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#f6f1e4;font:15px/1.5 sans-serif;color:#202122}.lobby.in-room{background:#fff}.lobby-card{width:min(760px,92vw);max-height:90vh;overflow:auto;padding:22px 28px 24px;background:#fffdf7;border:1px solid #d9ccaa;border-radius:18px;box-shadow:0 2px #e8dfc8,0 18px 40px #0000001f}.lobby-card[hidden]{display:none}.lobby-card h1{margin:0 0 6px;font:600 32px/1.2 Linux Libertine,Georgia,serif}.lobby-card .status{color:#54595d}.lobby-card .status.bad{color:#d33333;font-weight:700}.lobby-card .actions{display:flex;align-items:center;gap:18px;margin-top:12px}.lobby-card .back{color:#36c}.room-list .rooms{display:flex;flex-direction:column;gap:12px;margin:14px 0 6px}.room-card{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:16px;padding:10px 14px 10px 10px;background:#fff;border:1px solid #d9ccaa;border-radius:14px;box-shadow:0 2px #eee4cc}.room-card .pic{width:150px;height:94px;border-radius:9px;background:#efe8d6 center / cover no-repeat}.room-card .pic.loading{background-image:linear-gradient(90deg,#efe8d6,#f8f3e6,#efe8d6)}.room-card .pic.none{display:flex;align-items:center;justify-content:center;background:#efe8d6;font:600 56px/1 Linux Libertine,Georgia,serif;color:#c4b38a}.room-card .info{display:flex;flex-direction:column;gap:3px;min-width:0}.room-card .kind{color:#72777d;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.room-card .title{font:600 22px/1.15 Linux Libertine,Georgia,serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-card .bar{height:6px;border-radius:3px;background:#efe8d6;overflow:hidden;margin:3px 0}.room-card .fill{height:100%;background:#36c;border-radius:3px;transition:width .3s}.room-card .count{font-weight:700}.room-card .time{color:#72777d;font-size:13px}.room-card .time.soon{color:#d33333;font-weight:700}.room-card .join{padding:11px 20px;font:600 18px/1 Linux Libertine,Georgia,serif;color:#fff;background:#36c;border:0;border-radius:12px;cursor:pointer;box-shadow:0 4px #1f4a99}.room-card .join:hover{background:#447ff5}.room-list h3{margin:16px 0 4px;font:600 18px Linux Libertine,Georgia,serif}.room-list .game{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0;color:#54595d}.room-list .watch{padding:6px 14px;font:600 15px/1 Linux Libertine,Georgia,serif;color:#202122;background:#fffdf7;border:1px solid #d9ccaa;border-radius:10px;cursor:pointer;box-shadow:0 3px #e2d6b8}.room-list .watch:hover{background:#fff}.resume-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 0;padding:12px 16px;background:#fff4e5;border:1px solid #f0b660;border-radius:14px}.resume-card b{display:block;font:600 19px Linux Libertine,Georgia,serif}.resume-card small{color:#72777d}.resume-card .join{padding:11px 20px;font:600 18px/1 Linux Libertine,Georgia,serif;color:#fff;background:#d97706;border:0;border-radius:12px;cursor:pointer;box-shadow:0 4px #a35a05}.room-list .note{color:#72777d}@media(max-width:560px){.room-card{grid-template-columns:90px 1fr}.room-card .pic{width:90px;height:64px}.room-card .join{grid-column:1 / -1}}.wait-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.wait-ui{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;padding:22px 16px}.wait-ui>*{pointer-events:auto}.wait-ui header{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 22px;background:#fffdf7;border:1px solid #d9ccaa;border-radius:14px;box-shadow:0 2px #e8dfc8}.wait-ui .kind{color:#72777d;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.wait-ui .time{font:600 26px/1.2 Linux Libertine,Georgia,serif}.wait-ui .members{list-style:none;margin:auto 0 12px;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.wait-ui .members li{display:flex;align-items:center;gap:7px;padding:4px 12px 4px 8px;background:#fffdf7;border:1px solid #d9ccaa;border-radius:999px;font:600 16px Linux Libertine,Georgia,serif}.wait-ui .members li.you{border-color:#36c}.wait-ui .members li.ok{background:#e7f5ea;border-color:#14866d;color:#14866d}.wait-ui .members i{width:14px;height:14px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #d9ccaa}.wait-ui .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.wait-ui .actions button{padding:12px 22px;font:600 19px/1 Linux Libertine,Georgia,serif;border-radius:14px;cursor:pointer;color:#202122;background:#fffdf7;border:1px solid #d9ccaa;box-shadow:0 4px #e2d6b8}.wait-ui .actions button[hidden]{display:none}.wait-ui .actions .ready,.wait-ui .actions .solo{color:#fff;background:#36c;border-color:#36c;box-shadow:0 4px #1f4a99}.wait-ui .actions .ready.on{background:#14866d;border-color:#14866d;box-shadow:0 4px #0d5e4c}.wait-ui .hint{max-width:640px;margin:12px 0 0;text-align:center;color:#72777d;font-size:13px}.wait-ui kbd{padding:0 5px;border:1px solid #c8ccd1;border-bottom-width:2px;border-radius:4px;background:#f8f9fa;font-size:12px}.spectator{position:fixed;left:12px;top:52px;z-index:12;width:220px;max-height:calc(100vh - 170px);display:flex;flex-direction:column;gap:8px;padding:12px;background:#fffdf7f5;border:1px solid #d9ccaa;border-radius:14px;box-shadow:0 2px #e8dfc8,0 10px 24px #0000001a;font:14px/1.4 sans-serif;color:#202122}.spectator[hidden]{display:none}.spectator .who{display:flex;flex-direction:column}.spectator .who small{color:#72777d;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.spectator .who b{font:600 22px/1.2 Linux Libertine,Georgia,serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spectator .keys{color:#72777d;font-size:12px}.spectator kbd{padding:0 4px;border:1px solid #c8ccd1;border-bottom-width:2px;border-radius:4px;background:#f8f9fa;font-size:11px}.spectator .alive{list-style:none;margin:0;padding:0;overflow:auto;display:flex;flex-direction:column;gap:2px}.spectator .alive li{display:flex;align-items:center;gap:7px;padding:4px 8px;border-radius:8px;cursor:pointer}.spectator .alive li:hover{background:#f3ecda}.spectator .alive li.on{background:#e6eefc;font-weight:700}.spectator .alive i{flex:none;width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 1px #d9ccaa}.spectator .alive span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spectator .alive small{color:#72777d;font-size:11px}.spectator .leave{padding:10px 14px;font:600 16px/1 Linux Libertine,Georgia,serif;color:#fff;background:#36c;border:0;border-radius:12px;cursor:pointer;box-shadow:0 4px #1f4a99}.spectator .leave:hover{background:#447ff5}.menu{--cream: #fffdf7;--edge: #d9ccaa;--edge-soft: #e8dfc8;--ink: #202122;--muted: #72777d;--blue: #3366cc;--serif: "Linux Libertine", Georgia, "Times New Roman", serif;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;font:15px/1.4 sans-serif;color:var(--ink)}.menu>canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block}.menu-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.menu-overlay>*{pointer-events:auto}.menu-logo{position:absolute;top:2vh;left:50%;transform:translate(-50%);width:min(270px,26vw);pointer-events:none;filter:drop-shadow(0 3px 0 rgba(0,0,0,.06));transition:opacity .25s}.menu-foot{position:absolute;bottom:8px;right:14px;font-size:11px;color:#c8ccd1;pointer-events:none}.menu-side{position:absolute;top:40vh;display:flex;flex-direction:column;gap:14px;transition:opacity .25s}.menu-side.left{right:calc(50% + 140px)}.menu-side.right{left:calc(50% + 140px)}.menu-btn{display:flex;align-items:center;gap:14px;width:280px;padding:12px 18px 12px 14px;cursor:pointer;text-align:left;font:inherit;color:var(--ink);background:var(--cream);border:1px solid var(--edge);border-radius:12px;box-shadow:0 2px 0 var(--edge-soft),0 4px 14px #0000000f;transition:transform .15s,box-shadow .15s,border-color .15s}.menu-btn .ico{width:34px;height:34px;flex:none;color:var(--ink);transition:color .15s}.menu-btn .ico svg{width:100%;height:100%}.menu-btn b{display:block;font:600 23px/1.15 var(--serif)}.menu-btn small{display:block;color:var(--muted);font-size:13px}.menu-btn:hover .ico{color:var(--blue)}.menu-btn:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.menu-name{position:absolute;transform:translate(-50%,-100%);display:flex;align-items:center;gap:6px;padding:4px 10px 4px 14px;background:var(--cream);border:1px solid var(--edge);border-radius:999px;box-shadow:0 2px 8px #00000014;cursor:text;transition:opacity .2s,border-color .15s}.menu-name input{width:9.5em;border:0;background:none;font:600 20px/1.2 var(--serif);color:var(--ink);text-align:center;outline:none}.menu-name input::placeholder{color:#a2a9b1;font-weight:400;font-style:italic}.menu-name .pen{color:var(--muted);font-size:15px}.menu-name:hover,.menu-name:focus-within{border-color:var(--blue)}.menu-name:focus-within .pen{color:var(--blue)}.menu-name.gone{opacity:0;pointer-events:none}.menu-hero{position:absolute;cursor:pointer;border-radius:40%}.menu-hero:hover{background:radial-gradient(ellipse at 50% 70%,rgba(51,102,204,.12),transparent 70%)}.menu[data-screen]:not([data-screen=accueil]) nav,.menu[data-screen]:not([data-screen=accueil]) .menu-logo{opacity:0;pointer-events:none}.menu-panel{position:absolute;top:4vh;right:4vw;bottom:90px;width:min(620px,54vw);display:flex;flex-direction:column;background:var(--cream);border:1px solid var(--edge);border-radius:18px;box-shadow:0 2px 0 var(--edge-soft),0 18px 40px #0000001f;animation:panel-in .25s ease-out;overflow:hidden}.menu-panel[hidden]{display:none}@keyframes panel-in{0%{opacity:0;transform:translate(30px)}}.menu-panel header{display:flex;align-items:center;gap:14px;padding:18px 24px 6px}.menu-panel h2{margin:0;font:600 32px/1.2 var(--serif)}.menu-panel h3{margin:18px 0 10px;font:600 19px/1.2 var(--serif);color:var(--ink)}.menu-panel .body{padding:4px 24px 22px;overflow:auto}.menu-back{width:40px;height:40px;flex:none;border:1px solid var(--edge);border-radius:50%;background:#fff;color:var(--ink);font:20px/1 sans-serif;cursor:pointer;box-shadow:0 2px 0 var(--edge-soft);transition:transform .15s,border-color .15s}.menu-back:hover{border-color:var(--blue);color:var(--blue);transform:translate(-2px)}.menu-panel .note{color:var(--muted);font-size:13px}.menu-panel a{color:var(--blue)}.menu-panel code{background:#f3ecd9;padding:1px 6px;border-radius:6px}.menu-panel kbd,.menu-keys kbd{display:inline-block;min-width:1.4em;text-align:center;font:600 12px/1.6 sans-serif;padding:0 6px;background:#fff;border:1px solid var(--edge);border-bottom-width:3px;border-radius:6px}.menu-keys{border-collapse:separate;border-spacing:0 6px}.menu-keys td{padding:2px 16px 2px 0;vertical-align:top}.menu-row{display:flex;align-items:center;gap:12px;margin:14px 0}.menu-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}.menu-card{position:relative;display:flex;flex-direction:column;gap:3px;padding:0 0 12px;text-align:left;background:#fff;border:1px solid var(--edge);border-radius:14px;overflow:hidden;cursor:pointer;font:inherit;color:inherit;box-shadow:0 2px 0 var(--edge-soft);transition:transform .15s,box-shadow .15s,border-color .15s}.menu-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000001a}.menu-card.on{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue)}.menu-card .pic{height:104px;background:#efe7d2 center / cover no-repeat}.menu-card .pic.loading{background:linear-gradient(90deg,#efe7d2,#fbf6ea,#efe7d2);background-size:200% 100%;animation:shimmer 1.2s linear infinite}.menu-card .pic.none{background:#efe7d2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Ctext x='20' y='28' text-anchor='middle' font-family='Georgia' font-size='26' fill='%23b8ab8a'%3EW%3C/text%3E%3C/svg%3E") center / 40px no-repeat}@keyframes shimmer{to{background-position:-200% 0}}.menu-card b{padding:6px 12px 0;font:600 18px/1.2 var(--serif)}.menu-card small{padding:0 12px;color:var(--muted);font-size:12px}.menu-card .players{position:absolute;top:8px;right:8px;padding:2px 9px;font:600 12px/1.5 sans-serif;color:var(--ink);background:#fffdf7eb;border:1px solid var(--edge);border-radius:999px}.menu-bots{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.seg{display:inline-flex;padding:3px;gap:3px;background:#f3ecd9;border-radius:999px}.seg button{border:0;padding:7px 16px;border-radius:999px;background:none;font:600 14px sans-serif;color:var(--muted);cursor:pointer}.seg button.on{background:#fff;color:var(--ink);box-shadow:0 1px 4px #0000001f}.menu-bots .count.off{opacity:.35;pointer-events:none}.menu-bots.level-row{margin-top:10px}.menu-bots.level-row .label{font-weight:600}.menu-bots.level-row small{color:var(--muted)}.menu-bots.level-row.off{opacity:.35;pointer-events:none}.menu input[type=range]{accent-color:var(--blue)}.menu-go{margin-top:20px;width:100%;padding:14px;font:600 22px/1 var(--serif);color:#fff;background:var(--blue);border:0;border-radius:14px;cursor:pointer;box-shadow:0 4px #1f4a99;transition:transform .12s,box-shadow .12s}.menu-go:hover{transform:translateY(-2px);box-shadow:0 6px #1f4a99}.menu-go:active{transform:translateY(2px);box-shadow:0 2px #1f4a99}.menu-choice{display:flex;gap:14px;margin:10px 0 14px}.menu-card-btn{flex:1;display:flex;flex-direction:column;gap:4px;padding:18px;text-align:left;font:inherit;color:inherit;background:#fff;border:1px solid var(--edge);border-radius:14px;box-shadow:0 2px 0 var(--edge-soft)}.menu-card-btn .ico{width:34px;height:34px}.menu-card-btn b{font:600 20px var(--serif)}.menu-card-btn small{color:var(--muted)}.menu-card-btn:disabled{opacity:.55;cursor:not-allowed}.menu-card-btn:not(:disabled){cursor:pointer;transition:transform .15s,border-color .15s}.menu-card-btn:not(:disabled):hover{transform:translateY(-3px);border-color:#b9c9ea;box-shadow:inset 5px 0 0 var(--blue),0 4px 0 var(--edge-soft)}.menu-swatches{display:grid;grid-template-columns:repeat(6,38px);gap:12px}.menu-swatches .swatch{width:38px;height:38px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--edge),0 2px 0 var(--edge-soft);cursor:pointer;padding:0;transition:transform .12s}.menu-swatches .swatch:hover{transform:scale(1.1)}.menu-swatches .swatch.on{box-shadow:0 0 0 3px var(--ink)}.menu-turn{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(100deg,#e8dfc8,#f6f1e4 18%,#fffdf7 60%);clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%);transition:clip-path .5s ease-in;filter:drop-shadow(-10px 0 12px rgba(0,0,0,.35))}.menu-turn.go{clip-path:polygon(-30% 0,100% 0,100% 100%,0% 100%)}.menu-btn:hover{transform:translateY(-3px);border-color:#b9c9ea;box-shadow:inset 5px 0 0 var(--blue),0 4px 0 var(--edge-soft),0 10px 22px #0000001a}
