:root{--vh:100vh}@supports (height:100dvh){:root{--vh:100dvh}}:root{--bg:#0e0b13;--bg-glow:#241a30;--panel:#1a1522;--panel-2:#231c2e;--line:#3a2f4a;--text:#e9e4ef;--text-soft:#cfc7da;--muted:#9a90a8;--accent:#b3202c;--accent-2:#d8a84a;--title:#e0404c;--bad:#ff8a92;--good:#8be0a0;--warn:#fc6;--on-bg:#3a2c1c;--acard-a:#1d2030;--acard-b:#2c2418;--acard-border:#cfc8d8;--badge-bg:#f1ecf7;--badge-text:#111;--place-text:#ffe9a8;--back-a:#2a1830;--back-b:#3a2244;--a:#1c1c22;--b:#8a5530;--radius:10px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f4efe6;--bg-glow:#fffaf0;--panel:#fffdf8;--panel-2:#efe7d8;--line:#cdbfa6;--text:#2a2220;--text-soft:#4a3f3a;--muted:#6e6258;--accent:#b3202c;--accent-2:#8a5a00;--title:#a31824;--bad:#b3202c;--good:#1f7a3a;--warn:#8a5a00;--on-bg:#f3dfb0;--acard-a:#e3e6f2;--acard-b:#f1e6cf;--acard-border:#6b6275;--badge-bg:#2a2220;--badge-text:#fff;--place-text:#ffe9a8;--back-a:#dccbe6;--back-b:#cdb6dc;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light]{--bg:#f4efe6;--bg-glow:#fffaf0;--panel:#fffdf8;--panel-2:#efe7d8;--line:#cdbfa6;--text:#2a2220;--text-soft:#4a3f3a;--muted:#6e6258;--accent:#b3202c;--accent-2:#8a5a00;--title:#a31824;--bad:#b3202c;--good:#1f7a3a;--warn:#8a5a00;--on-bg:#f3dfb0;--acard-a:#e3e6f2;--acard-b:#f1e6cf;--acard-border:#6b6275;--badge-bg:#2a2220;--badge-text:#fff;--place-text:#ffe9a8;--back-a:#dccbe6;--back-b:#cdb6dc;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% 0%, var(--bg-glow) 0%, var(--bg) 60%) fixed;color:var(--text);margin:0;font-family:Georgia,Times New Roman,serif;line-height:1.4}h1,h2{margin:0;font-weight:400}h2{color:var(--accent-2);margin-bottom:8px;font-size:1rem}.title{color:var(--title);letter-spacing:.04em;text-align:center;font-size:clamp(1.4rem,4vw,2.2rem)}.muted{color:var(--muted);margin:4px 0;font-size:.9rem}button{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);cursor:pointer;border-radius:8px;min-height:40px;padding:8px 14px}button:hover:not(:disabled){border-color:var(--accent-2)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);border-color:var(--title)}button.danger{border-color:var(--title);color:var(--bad)}button.on{border-color:var(--accent-2);background:var(--on-bg)}.langbar{z-index:20;gap:4px;display:flex;position:fixed;top:8px;right:8px}.langbar button{min-height:30px;padding:2px 10px}@media (width<=600px){.langbar{gap:3px;max-width:calc(100vw - 12px);top:6px;right:6px}.langbar:not(.vertical)>button,.langbar:not(.vertical)>.editionmenu>button{min-height:32px;padding:2px 7px;font-size:.82rem}.langbar:not(.vertical)>.editionmenu>button{text-overflow:ellipsis;white-space:nowrap;max-width:38vw;overflow:hidden}}.langbar.vertical>*,.foldmenu-panel>*{display:block}.langbar.vertical button,.foldmenu-panel button{text-align:left;width:100%;min-height:30px;padding:2px 12px;font-size:.9rem}.langbar.vertical .editionmenu,.foldmenu-panel .editionmenu{display:block}.foldmenu-btn{font-size:1.1rem}.foldmenu-panel{background:var(--panel,#fff);border:1px solid #80808080;border-radius:8px;flex-direction:column;gap:4px;width:max-content;min-width:170px;max-width:calc(100vw - 16px);margin-top:4px;padding:6px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 4px 14px #0000004d}.btns{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.btns.center{justify-content:center}.version{color:var(--muted,#8a8f9c);opacity:.8;text-align:center;font-size:.75rem}.version-hint{z-index:2147483646;min-height:0;padding:5px 12px calc(5px + env(safe-area-inset-bottom,0px));letter-spacing:.02em;color:#fff;cursor:pointer;background:#005cbef0;border:0;border-radius:8px 0 0;margin:0;font:600 13px/1.4 system-ui,sans-serif;position:fixed;bottom:0;right:0;box-shadow:0 0 8px #00000059}.version-hint:hover,.version-hint:focus-visible{background:#006ee1}@media print{.version-hint,.langbar,.rules-toc{display:none}}button.primary{color:#fff}.langbar .theme{min-width:36px}.iconstrike{display:inline-block;position:relative}.iconstrike.off{opacity:.6}.iconstrike.off:after{content:"";background:#d6336c;border-radius:1px;height:2px;margin-top:-1px;position:absolute;top:50%;left:-3px;right:-3px;transform:rotate(-45deg)}.editionmenu{position:relative}.editionmenu-list{z-index:30;background:var(--panel,#fff);border:1px solid #80808080;border-radius:8px;flex-direction:column;gap:2px;min-width:100%;margin:4px 0 0;padding:4px;list-style:none;display:flex;position:absolute;top:100%;right:0;box-shadow:0 4px 14px #0000004d}.editionmenu-list button{text-align:left;white-space:nowrap;width:100%}.modal-backdrop{z-index:50;background:#0009;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border:2px solid var(--accent-2);border-radius:var(--radius);text-align:left;flex-direction:column;gap:8px;width:min(460px,100%);max-height:90vh;padding:16px;display:flex;overflow:auto}.modal>h2{padding-right:30px}.debug-table{border-collapse:collapse;width:100%;font-size:.85rem}.debug-table th,.debug-table td{text-align:left;vertical-align:top;border-bottom:1px solid #80808059;padding:2px 6px}.stats{max-width:760px;margin:0 auto;padding:16px}.stats-entry{border:1px solid var(--line,#80808066);border-radius:8px;margin:16px 0;padding:12px 14px}.stats-entry.mine{border-color:var(--accent,#b08d57)}.rules-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:20px;margin-top:14px;display:grid}.rules-toc{max-height:calc(100vh - 24px);font-size:.88rem;position:sticky;top:12px;overflow-y:auto}.rules-toc .toc-back{z-index:1;background:var(--bg);border-bottom:1px solid var(--line);margin-bottom:8px;padding-bottom:8px;position:sticky;top:0}.rules-toc ul{margin:0;padding:0;list-style:none}.rules-toc ul ul{border-left:2px solid var(--line);margin:2px 0 6px 10px}.rules-toc button{text-align:left;width:100%;min-height:0;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 8px;display:block}.rules-toc button:hover{background:var(--panel-2)}.rules-toc button.on{color:var(--accent);background:var(--panel-2);font-weight:600}.rules-toc button.sub{opacity:.85;padding:3px 8px;font-size:.82rem}.rules-main{min-width:0}@media (width<=860px){.rules-layout{grid-template-columns:1fr}.rules-toc{max-height:none;position:static}.rules-toc>ul{flex-wrap:wrap;gap:6px;display:flex}.rules-toc ul ul{display:none}.rules-toc button{border:1px solid var(--line);padding:4px 10px}.rules-toc .toc-other{border:0;margin:0;padding:0}.rules-toc .toc-other a{border:1px solid var(--line);padding:4px 10px}.profile .toc-back,.admin .toc-back,.rules-toc .toc-back{background:0 0;border:0;margin:0;padding:0;position:static}}.toc-slot{display:contents}.foldmenu.toc .foldmenu-btn{white-space:nowrap;font-size:.9rem}.foldmenu-panel .rules-toc.in-fold{max-height:calc(var(--vh) - 70px);font-size:.9rem;position:static;overflow-y:auto}.foldmenu-panel .rules-toc.in-fold ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.foldmenu-panel .rules-toc.in-fold ul ul{margin:4px 0 0 14px;display:flex}.foldmenu-panel .rules-toc.in-fold li{border:0;margin:0;padding:0;list-style:none}.foldmenu-panel .rules-toc.in-fold button,.foldmenu-panel .rules-toc.in-fold a{box-sizing:border-box;text-align:left;width:100%;min-height:30px;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:2px 12px;font-size:.9rem;text-decoration:none;display:block}.foldmenu-panel .rules-toc.in-fold button.on{border-color:var(--accent-2);background:var(--on-bg)}.invite-handover-dialog{width:calc(100vw - 32px);max-width:28rem}.invite-handover-dialog h2{margin:0 0 6px}.handover-list{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;grid-template-columns:max-content 1fr;gap:4px 12px;margin:10px 0;padding:10px 12px;font-size:.95rem;display:grid}.handover-list dt{color:var(--muted)}.handover-list dd{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;margin:0;font-family:ui-monospace,Menlo,Consolas,monospace}.handover-text{width:100%;margin:6px 0;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85rem}.rules-toc .toc-other{border-top:1px solid var(--line);margin-top:10px;padding-top:8px}.rules-toc .toc-other a{border-radius:6px;padding:5px 8px;font-weight:600;text-decoration:none;display:block}.rules-toc .toc-other a:hover{background:var(--panel-2)}.admin h3{margin:18px 0 8px}.admin-room-head{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.admin-room-head button{margin-left:auto}.admin{padding-top:44px}.admin-room-head .danger{margin-left:0}.admin-logs-tabs,.admin-logs-filter{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:8px 0;display:flex}.admin-logs-tabs [aria-selected=true]{font-weight:700;text-decoration:underline}.admin-log-pre{white-space:pre-wrap;word-break:break-all;background:#00000040;border-radius:6px;max-height:60vh;margin:8px 0 0;padding:8px;font-size:.78rem;line-height:1.35;overflow:auto}.admin-log-server{min-height:12rem}.qr{max-width:100%;height:auto;image-rendering:pixelated;background:#fff;margin:8px auto;display:block}.recovery-codes{letter-spacing:.04em;grid-template-columns:repeat(2,1fr);gap:4px 12px;margin:8px 0;padding:0;font-size:1.05rem;list-style:none;display:grid}.confirm-dialog{text-align:center}.confirm-dialog p{margin:4px 0 8px}.login{flex-direction:column;gap:12px;max-width:360px;margin:24px auto;padding:16px;display:flex}.login label{text-align:left;flex-direction:column;gap:4px;display:flex}.login input,.admin-new input[type=text],.invite-form input[type=text]{font:inherit;border:1px solid var(--line,#80808080);background:var(--panel,transparent);color:inherit;border-radius:6px;padding:8px 10px}.pw-field{display:flex;position:relative}.pw-field input{flex:1;min-width:0;padding-right:42px}.pw-field .pw-toggle{width:34px;height:34px;color:inherit;opacity:.7;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.pw-field .pw-toggle:hover,.pw-field .pw-toggle[aria-pressed=true]{opacity:1}.login-error{color:var(--danger,#b3261e);margin:0}.login .linkbtn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;text-decoration:underline}.login-wait{text-align:center;margin:32px 16px}.qr-login{border-top:1px solid var(--line,#80808059);text-align:center;flex-direction:column;align-items:center;gap:8px;padding-top:12px;display:flex}.qr-login h3{margin:0;font-size:1rem}.qr-login p{margin:0}.qr-login .qr{max-width:100%;height:auto;image-rendering:pixelated;background:#fff}.qr-scanner{object-fit:cover;background:#000;border-radius:8px;width:100%;max-height:60vh}.qr-device{text-align:left;margin:0;padding-left:20px}.account .editionmenu-list{left:auto;right:0}.admin-new,.invite-form{flex-direction:column;gap:10px;display:flex}.admin-new-row{flex-wrap:wrap;gap:8px;display:flex}.admin-new-row input{flex:140px;min-width:0}.admin-editions{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.admin-user-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.admin-user-name{font-size:1.1em}.admin-chips{flex-wrap:wrap;gap:4px 6px;display:inline-flex}.admin-chips .chip{border:1px solid var(--line);background:var(--panel-2);color:var(--text-soft);white-space:nowrap;border-radius:999px;padding:1px 9px;font-size:.8em}.admin-chips .chip.main{border-color:var(--accent-2);color:var(--accent-2)}.admin-chips .chip.bad{border-color:var(--bad);color:var(--bad)}.admin-user-login{margin-left:auto;font-size:.85em}.admin-account{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:10px 0;display:flex}.admin-account button{margin:0}.admin-account>.check{margin-left:auto}.admin-apps{border-top:1px solid var(--line);gap:6px;padding-top:10px;display:grid}.admin-app-row{background:var(--panel-2);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;min-height:38px;padding:6px 10px;display:grid}.admin-app-row .check{min-width:0}.admin-app-admin{color:var(--text-soft);font-size:.9em}@media (width<=520px){.admin-user-login,.admin-account>.check{flex-basis:100%;margin-left:0}}.stats.profile,.stats.admin{max-width:1000px;padding-top:52px}.admin section{scroll-margin-top:52px}@media (width>=861px){.profile .rules-toc,.admin .rules-toc{max-height:calc(100vh - 114px);top:66px}}.profile .toc-back,.admin .toc-back{border-bottom:1px solid var(--line);margin-bottom:8px;padding-bottom:8px}.admin-user.blocked{opacity:.6}.mono{letter-spacing:.04em;font-family:ui-monospace,Menlo,Consolas,monospace}.code-block{text-align:center;-webkit-user-select:all;user-select:all;border:1px dashed var(--line,#80808080);border-radius:6px;margin:0;padding:10px 12px}.code-list{margin:8px 0;padding:0;list-style:none}.code-list li{flex-wrap:wrap;align-items:center;gap:6px 10px;padding:4px 0;display:flex}.account-dialog{flex-direction:column;gap:12px;max-width:400px;display:flex}.account-dialog h2{margin:0}.account-dialog .login{margin:0;padding:0}.account-dialog input.mono{text-transform:uppercase;text-align:center;font-size:1.1rem}.admin-new-row select,.admin-new-row input[type=number]{font:inherit;border:1px solid var(--line,#80808080);background:var(--panel,transparent);color:inherit;border-radius:6px;padding:8px 10px}.invite-qr{text-align:center}.invite-qr .qr{margin:8px auto}.invite-qr .invite-link{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 12px;margin:6px 0;display:flex}.invite-qr .invite-link a{overflow-wrap:anywhere;font-weight:600}.invite-qr .invite-link .link-copy{padding:2px 10px}.invite-limit,.invite-handover{margin:8px 0}.admin h3>button{font:inherit;text-align:left}.pick-bar{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:8px 0 12px;display:flex}.combobox{flex:14rem;max-width:24rem;position:relative}.combobox input{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--line,#80808080);background:var(--panel,transparent);color:inherit;border-radius:6px;padding:8px 28px 8px 10px}.combobox-caret{pointer-events:none;opacity:.6;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.combobox-list{z-index:20;border:1px solid var(--line,#80808080);background:var(--panel,#fff);border-radius:6px;max-height:16rem;margin:2px 0 0;padding:4px 0;list-style:none;position:absolute;left:0;right:0;overflow-y:auto;box-shadow:0 6px 18px #00000040}.combobox-list li{cursor:pointer;padding:8px 10px}.combobox-list li.cursor{background:#80808033}.combobox-list li.on{font-weight:700}.combobox-list .combobox-empty{cursor:default}.profile-actions{gap:10px;width:fit-content;max-width:100%;margin:8px 0;display:grid}.profile-actions button{text-align:left;border-radius:10px;padding:10px 18px}.profile-recovery{margin-top:4px}.bar-settings:not([hidden]){flex-direction:column;gap:4px;padding:6px;display:flex}.bar-settings .editionmenu{display:block}.legendmenu{display:inline-block}.langbar.vertical .legendmenu,.foldmenu-panel .legendmenu{display:block}.legend-pop{background:var(--panel,#fff);text-align:left;border:1px solid #80808080;border-radius:8px;max-width:min(340px,100vw - 16px);margin-top:4px;padding:8px 10px;box-shadow:0 4px 14px #0000004d}.legend-pop .legend{flex-direction:column;margin-top:0}.legend-pop p{margin:8px 0 0;font-size:.8rem}.game-info{flex-direction:column;gap:4px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.game-info .game-id{width:100%;padding:2px 6px}.report-form,.report-manage{flex-direction:column;gap:10px;display:flex}.report-kind{border:0;flex-wrap:wrap;gap:4px 18px;margin:0;padding:0;display:flex}.report-kind legend{margin-bottom:4px;padding:0}.report-text{flex-direction:column;gap:4px;display:flex}.report-text textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--line,#80808080);background:var(--panel,transparent);color:inherit;resize:vertical;border-radius:6px;padding:8px 10px}.report-count{align-self:flex-end;margin:0}.report-picked,.report-images{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.report-thumb{display:inline-block;position:relative}.report-thumb img,.report-images img{object-fit:cover;border:1px solid var(--line,#80808080);background:#fff;border-radius:6px;width:84px;height:84px;display:block}.report-thumb button{border-radius:999px;width:24px;height:24px;padding:0;line-height:1;position:absolute;top:-6px;right:-6px}.report-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.report-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}.report-reply{border-left:3px solid var(--accent-2,#d8a84a);margin-top:8px;padding-left:10px}.report-tech{overflow-wrap:anywhere}.report-list h4{margin:18px 0 0}.report-filter{flex-wrap:wrap;gap:6px 16px;margin:8px 0;display:flex}.admin-chips .chip.status-new{border-color:var(--warn,#fc6);color:var(--warn,#fc6)}.admin-chips .chip.status-done{border-color:var(--good,#8be0a0);color:var(--good,#8be0a0)}.admin-chips .chip.status-rejected{border-color:var(--bad,#ff8a92);color:var(--bad,#ff8a92)}.report-new-hint{margin:0 auto 14px;display:block}button.link{min-height:0;color:var(--accent-2);background:0 0;border:none;padding:4px 6px;text-decoration:underline}.banner{background:var(--panel-2);border-radius:8px;margin:0 0 8px;padding:8px 12px}.banner.error{background:color-mix(in srgb, var(--bad) 20%, var(--panel))}.version{text-align:center;color:var(--muted);margin-top:24px;font-size:.75rem}.app{max-width:980px;margin:0 auto;padding:56px 16px 24px}.subtitle{text-align:center;margin:-4px 0 20px}.tiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.tile{border:1px solid var(--line);background:var(--panel);height:100%;color:var(--text);border-radius:14px;flex-direction:column;text-decoration:none;transition:transform .15s,border-color .15s;display:flex;overflow:hidden}a.tile:hover,a.tile:focus-visible{border-color:var(--accent-2);transform:translateY(-2px)}.tile-group+.tile-group{margin-top:28px}.tile-group-title{color:var(--text-soft);margin:0 0 10px;font-size:1.1rem}.tile-img{aspect-ratio:16/7;background-color:var(--panel-2);background-position:50%;background-size:cover;display:block}.tile-body{flex-direction:column;flex:1;gap:6px;padding:12px 14px 14px;display:flex}.tile-title{font-size:1.25rem;font-weight:700}.tile-text{color:var(--text-soft);font-size:.92rem}.tile-go{color:var(--accent-2);margin-top:auto;padding-top:6px;font-weight:700}.hub-admin a{color:var(--accent-2)}
