@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/surround/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/surround/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/surround/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/surround/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/surround/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/surround/assets/ibm-plex-mono-cyrillic-ext-700-normal-BDQ-w_bc.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-cyrillic-ext-700-normal-CtgKGIh5.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/surround/assets/ibm-plex-mono-cyrillic-700-normal-Bp80XfeI.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-cyrillic-700-normal-O_YjL27c.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/surround/assets/ibm-plex-mono-vietnamese-700-normal-apsD3J7v.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-vietnamese-700-normal-Bs14ezHR.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/surround/assets/ibm-plex-mono-latin-ext-700-normal-Dhimjc7-.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-latin-ext-700-normal-Cwsjk1Jb.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/surround/assets/ibm-plex-mono-latin-700-normal-7sUh57Bg.woff2) format("woff2"),url(/surround/assets/ibm-plex-mono-latin-700-normal-CNHXzs6v.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAWEABAAAAAACnwAAAUtAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQIUAmCcxEQCoNgg18LDgABNgIkAxgEIAWDXgdGDINsG1MJQB6FTZl7lLXccknfu1wyTATU3L97eflQ5pSZFDAaQ2lZGABwoEh28vM61/uRmqMp3E9NUQkmEvCWM7XNclvAh+1kutF0mLT/I/pDTx2q/sjCXMDGBokHg7TG5j00ngglgHOe50pjWa/ntXqNCoB94CaYSdTl3t0pAEWZmaF+A6qbQYYCZEDP9PEhi6OXDSzMgOl/ok4FE8D+eBw1haNoEO2PJgFDqT87zJAT2oOoGE3SBAlEDkAOiAAwuE8Nhg2Sq/G0/z+Ip0UVExQQAFFMLAEJAoiAHFAeCQHlUTigOBkCBZSA3UuuZuC/FbJ/vpv/eRTkev1KivTjpCmTY0qVAJtTklQqVq/VMFA860QVKkhCG3k2jCrMk0QUqKKlGX6CFvDmU6ag2VCRfNSkFyGcmZyGbFequMYiOXLmDL8INUtwCV8shFnNRUSzFGpS2y8imyWlQq7+gMZ2awc+kewfPO9EMgCPDwwLcf1WqpoxcmJySyxomsRvpc2TWKHXZIapmt/RkeUXUZFwrDnRB0vxRAw8Ie2u+dc8RTcbioVcg1HtDe3C1n7VWk2/toxlcYnwYNSkp6dfNfaUdmZJrVIquJuPrhpKrZImnUEWRzN20PTqEjr27+cjVlbYOqSq7a87WTJOtNGLDYi97KKYubn6/cWwdZRSsxV1TCshJKOlg3n8Q4v9InmzoU3tJcUMy3b4ASHJKOjQWaYUQD5AcSAH9ABGABCDUB0BQABxnFasQC0ZLJGnGtj/6tmrsO1KpaJB2VY8qG+Gba+K7n/RbMz662IHXj58aWvlYhTjSlCdPGvfy2IHXvccvfIiKX62+NSu+FLSJVvZahhTH1fsiQzVVhbtfjyzbtHWwzU6cClZzpK4N/0uzW+Y7iuPqjZzLsvREX33PJ5Zr2jb7r2mnNLsHE+l5USDLdMJH+AWioy8TNlMEVU6BU+koP8kEbSstgiU7dEhQh9SUDpFURBFpB9atfalM9Kkq3wQQ2Xg7kFyl6gxINHN6pa9SaAENL037ZUS3imBWM3CBMxJjZAgI0k6dC4y/SbFBv/6tRSCMjn0N6UuTWMNZBaZqP/eEsVEk7ZSUzpleZJSU9AOFdAB5dCtBS8cpCeRC35oQiIgIChYtyfH16ft9q+wCPkN3t752g3w4ffA/g//z/zpcTugCAIggK+LJX+DnqLCGMglkB/eShh+zfFonQCnC+2jOkdlAA0BFAURohsSAgqNIqFYDmBKqIlsxOY3m6Dxi03iPGFTUmxj0yINsiUCUrSaIQsWWbjpc7IEy8KGhPAk9AVhga/KmxIwK2RMUJ1S1SoUqlFvyohtmgyYEdZs3ACeX6MRYzabMiCk1YiQMN6sGViigMQoZjya8WjGoyis8DVnj8PMrqWTH7yGhxWZNWe7EN6YcQuwJAkSZcIxpHY/FjInACswZQr20Yd57QgFR37lFiOGBRAAsslxXZEPhEAAGUhESTev4BNAV4yJpITCFMnWggQRNLUEUSOahpWmQcH79zQoksIuCihsep9WiUw+mHFfpcNJ5RbPAIv00vlZxdCCRt+KNCmWyhlKmJAlgUt8K6lVmXQuq1WUUc0KBJlhMq1WvqRlskS3KtmyVVLJPFjRNJCVqZSzBS1MuEpum0E10rGQVbhu9xgs5cGskgtug3oKXKUS0qlUkngYVauqaKklBkrSpin4ZSpbwomE1lHEOWI+8R7SgfVEjnpPNFhLfIUArCNy/n5mTVDHHFFn9nSabYl3/ZvYLI0vEfXp1gE=) format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAASEAA0AAAAABXwAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABTAAAAYGmlnq5jbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAADAAAAAwELfCadoZWFkAAAC4AAAADYAAAA2GnZrk2hoZWEAAAMYAAAAHwAAACQJCQOBaG10eAAAAzgAAAAXAAAAGAcQAE5sb2NhAAADUAAAAA4AAAAOAIgAiG1heHAAAANgAAAAHAAAACAAGwDzbmFtZQAAA3wAAADYAAAB3iYtQbtwb3N0AAAEVAAAADAAAABG/5SrMAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothTEOQFAQBWef/ZVevZfQqXQiKo3ix4FUDqNSOY87SBAmMxlco60k0KIJ6L/bTGM1qExFUsEjvImfrh2CA2LzfJ3gWVWYGYBcOxDoBuCVClMAeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJSERISABmP6kASD+4AMM/PQ8ApQAAQAu//QCRgLGADUAAAUiLgI1NDY3IzUzNyE1ITY1NCYjIgYHJz4BMzIeAhUUBzMVIwchFSEOARUUFjMyNjcXDgEBPDBNNh4IBUp9pv7dAXcJQTonRh41KmY3LEk1HQlOfqYBJP6ICAhHPCpLKTMobgwcMUUqFiMPQ2BDFh02NR4jNS4oGC1BKCIYQ2BDDiAUPDwjKzcwMQABAAAAAQBBzvNdCF8PPPUACQPoAAAAANm84TwAAAAA3PJHEf5N/esGXQQ0AAAACQACAAAAAAAAeNpjYGRgYIn5+4qBga36n+9/UbZYoAgqYAMAjoYFkwB42mO8waDAAAJvIJiphEEPRAMANRYEYgAAAAAUABQAFAAUAGAAYAAAeNpjYGRgYGBjmMDAw5DIwArmIQAzAyMAGHQBD3jalc4BR0NRGIDhZ7VSMECAHATQXcugBlVElFIJAatu25jtOndl/ad+Wr8g0MFxGVA+eA7ne33Y8mZdq72Np9Zudsuen+w1Hd/Z6058Zbf1LbM37HjO3lToZ3eSGFukqRzrpqm9iCYqi+RCnTxVmItGum5cuHLpzLVbU6Wle0MztQfjpIl9d0oj76aGokelKJXMzQQ9hV5uhKYSmk5oSmG1lDcHze7gn5esvv5ywbm5yqeYPDK2EBw60HMkNIX0S1QpBKemaYJmQ+qJSrVS9KH0qvgFlnxHCnjaY2BiAIP/CxlsGLABNiBmZGRiYGZkZmRhL83LNDAwcAHRRgZOJhC+owEAx1QIaw==) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/surround/assets/ibm-plex-sans-thai-thai-400-normal-Bt1rR4gi.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-thai-400-normal-DKc8V4lk.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/surround/assets/ibm-plex-sans-thai-latin-ext-400-normal-DBkYO1u-.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-latin-ext-400-normal-n-X-g5Z4.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/surround/assets/ibm-plex-sans-thai-latin-400-normal-CwmoKdEh.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-latin-400-normal-YXrLwNa7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAAV4ABAAAAAAChgAAAUeAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQISAmCcxEQCoMsgzILDgABNgIkAxgEIAWDQAdGDINkG/gICB4HzvksHpSclNDkippHLXj4bGp/ZleEBnzJyIBCI8oOkMxSgBVgUI464KLU8UbB+pBL5NIngtxdgHFLKA/SQF4gooyDBAOt/2vHv09dmm5Jwz5eumAwSLdppWDtFODK0QC2Lxj9hqVZgN7e3+hB5LVU90rtdlc6G8ew80QEYKdSJREfXz6NFR0gD+AkDgrSWkvXpiP7KPxb1J0UAoL26XKrTGICmVnzYdmfLdaTTN0gHRbNJDWkBmiABABYMlYoHoI6+tr5n0FfK4uVEAJA2mUOUCQgAQ0opCGAQjpDwIkViQ64UF5Sr+VB+S2R/8+ll0Awed8SU5ZbZ1TSdqvssVybkEdY7KhdLvAY4Mx3cYolOPIDdHEQs7TjlLkafgsaLtKA4DSwJZIvC/FYyhD5qwbxehsb2ob1IQMRVGpsZzwrNoYMZNBANAVCBlpQjWe12vHJZHVKZVRmydaMGlc7Nm3N6rUpsdiTzqQiKstU7OzapyOQHUpVbPWkU6mekIHOw7o7k0JA7SLhXSQ7Zz5kYAouU1mtLpGcSGYvxCtSczzvCATUWPZhIjkPxysCI8lc5guTdeLsztKrQ4vH3JTZrTTzVGEeyvKkdkaZrg5kLxTFikx1ql9k8DDXKKAP+QzI9VrtmCEuJGzMF2CtSKklVbpTFdN/cDxkYAsum0qOxSsCgVQIgYYVO16mfJ4HADMATkAD+sAyAKAD/5IAgABdb3NYXObNDpN9U+azjz4TF58tsQvHnF24nhQX37NnErMPPnfc+vTDT7lQ6sA+7cL5FBc+dNz6fHDm7ifK+ZRzcO7HtT/2LHZ0TC48Vrm0yVVdunjq4K1l89N71hdHGsPLu0cT9bua+2MrKhOVI3Xlc8umT95YJqf2JQrbLrfWjqi5+MTSvW05gBw6Vmw+f7eB7jXgAwwYCwMi5Tbg7ykD8Y0B70X/xiC8BpZvorEc5dq0Z393ICpnl1swO1Z9Dhfl2O+OrsiwiQgXg1zIdcMaf3Ih1t3Gjvx3m+fB3mFD/GtweRXYDctrC7n/zSkudFG73V6DwDO4AGugHdZCG2ywEIpDwigboS+NxhCAYLg1HXthg6fvP6tN+xHgy7u/H+Cbvxf5/h+Z/8W8Xk8ANiQAAr4XbvMZJ1a+ZAGCiYpZfIFi/7XOyfM0qKwifVaewMl2JgQAdpCIb9EQgJVtNIRuA1YnIBV0eEsqcXNXqjHi1LzuKjVRbKvUTFRbt5s2sMORmfCAHpHqw7Y4ZKdaeMRh4cvZaY+w/Q7ZLmKVccstMWKFhD3STpiyyT6HTdthk51CpqTttdOI/fbYalbaISaFE/soMWExK0cvdbNKLx9Ojm931B6bHOIZOS5VulSpXtWP2u+Ak4+3bf8oVyotomK6KWwr558eckCYMmyPPVSg7bDSkl7D9K88Jm2rMAkA+UianGEGhJBoQhO65ei+nVGxxpFviY60qW8djhrQLIfAjWwWLdeDBh88pU2zKqU8gLX5AV7NalQq5OyP+dRTyvg5xEx+lWBUp2bViqyrJUv0iST0MotWNMfUqeBDtc6UuPbSUYKKiUFtqavSddxMh6CAsqTawrhuodJRgIqVVk2poJTbbrsEAb3wKju7zImLqZSrHJy21UpdauQqJw2UUj52GXexwqComsdsu4mqv9ZJcvjZsDQb8FPpyDGomDiypg/RD9BfQl77UTeCHF7lsG4EOAw8BjOutA6CqB37QX8R/QkOoyhxdyRQk7SAOAIAAAA=) format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAASAAA0AAAAABVQAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABSAAAAYGpxoOFjbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAAC4AAAAuIJK/GhoZWFkAAAC2AAAADYAAAA2GmxrsGhoZWEAAAMQAAAAHwAAACQI/wOEaG10eAAAAzAAAAAXAAAAGAcbAEhsb2NhAAADSAAAAA4AAAAOAIIAgm1heHAAAANYAAAAHAAAACAAGwD5bmFtZQAAA3QAAADZAAABwCLFP6pwb3N0AAAEUAAAADAAAABG/6irTAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothTEOQEAUBec/u5HQq/81tDoR/RYbldM4j0rlPO4gscJkJkPQqkQEbeUwfbeFZD2orauoiiK8iZ9xmJ0TfA/5viBkdW5mAGp0AI4e3IAKVQAAeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJTMRIyABmP7A6OgDDPz0WAJcAAEAKP/0AlcCxgAzAAAFIi4CNTQ2NyM1MzcjNSE2NTQmIyIHJz4BMzIeAhUUBzMVIwchFSEGFRQWMzI2NxcOAQFJNlM4HQMCSHGM/QFsBjMuTDREI2s9MU42HQZLeYkBAv6SBjkzJUMmRSVuDCA3SyoNFAlTTFQPFi8qOlEoLB0xQyYaGFRMUxEUNDQhKFIrNQAAAQAAAAEAQVVJdwRfDzz1AAkD6AAAAADZvOE9AAAAANzyRxH+Qv3rBl4EUAAAAAkAAgAAAAAAAHjaY2BkYGCJ+fuKgYGt5p/Tf3G2OKAIKmADAI3fBYwAeNpjvMGgwAACbyCYqZ5BA0QDADVFBGcAAAAAEwATABMAEwBcAFwAAHjaY2BkYGBgY5jAwMOQzsAK5iEAMwMjABjyARV42pWMtWFDQRBEn5kdOv4FmBkSk5gZIjEzS7WpAlWlCcSZjvbN7ewAx+TYY2f/BIjvMOMdXpnMeJdLxjPe45fRjPdXPAdckZnxIfc8z/hSBAU62g0+udNuk6ZFUbojvqUtrqjWaZFX34MZJzZ+ceFVJ8uAAElqcgYpiIrc6CdLVfRLXZ4MYekWyqIup8EDtzzM3q9ZmiHaNtcvnacrTtJa5MzmRbME0SxDtJnxp9pgSIsiebk6GDxyzwMfolkmctGS71b8Q0XbWJloI0VWNava05vhdgr05EGRAAAAeNpjYGIAg/9bGSIYsAE2IGZkZGJgZmRmZGEvzcs0MDBwAdFGBk4mEL6jAQDSjAib) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/surround/assets/ibm-plex-sans-thai-thai-600-normal-DvfsyWAn.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-thai-600-normal-BOwfviun.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/surround/assets/ibm-plex-sans-thai-latin-ext-600-normal-BXI6PlF4.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-latin-ext-600-normal-iH120vlL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/surround/assets/ibm-plex-sans-thai-latin-600-normal-BR-dhaTH.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-latin-600-normal-P_JjY83V.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,d09GMgABAAAAAAWUABAAAAAACqAAAAU7AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQISgmCcxEQCoNMg1ELDgABNgIkAxgEIAWDRgdGDIQ+G3kJCJ4FjltedRKVXkquKLdOwcN/bn73JSF4oaJpT0PF0arR9qtRc76oMKa76WI3jKeM+MrcyMVALwLb/YR3kQZpIBOIKPDEggSr7/+/7k3dtzvv5rABlU54SLW1lKoZ/2IBrA3kj6dYJuMBjlEAMFq6/bfFNASVkWOY4YkAbOTLJ8L9KzZgQQFIJgGDFDVqyPM5a2L/TjJ+i3oqGYBJjyvSdukhTCDFpC3AcvyzxSjT0QqS3SKbJBlJBmRAAgBYOlbqLIB+leH/vgZlWMrShRAAklNKADoJkAAZyCAjgAwKXcCBBQkFcKJb0O9NBv2RSP72kzPWICi9dbZBYbOWmHTABtut0MTvapa4xLBpN7MAOJJNOMRSVNGFTexBlZw4pEQEn5KqL2lAzTSwrtlylxDXRgyRvGAQbotYkcdGvQaiRtf7ouG4GPcaSDUGosrjNZBr9P64XNq/bktxRI/psaXTMb1fn5+YjiulaOpxxkws4tfjrK9ourihPPGuiNa0NhOJtHgNlOWYEoxFNKZvXYhtNbnX/Oc1MNUs1+Ny2Zota7fET4c16wx7Sx6P3hd/bM2WajKseQqTC6gHNmHuRDTn6GAOqVXOa1nMud53drkqkR2jxWJP/LRf12LFEc5l8JhnUIBdEYOFJ+XSPkOcXtPHeVrdmjXWjUEwopX/n2GvgbVm+fotfWHN44l4EchYsOFmSia5AFABcAAy0AFWAgAFhAsJABCgKA12s1OdtJtsE7HXX35dfFu2Tdg324TzNnHmEVvs1YpNd75h99pLr3H69gw7tg12HDdz+jm7Zzo3PvSq7rjdUTv1YvjFllX25g2eK/nLqy1OdWBw++ne7wbnVqVWP11Z0pUfXTr863ZvZ+3qgqn83lJ7dvWywUPHen8ZjFY7g6t9xcmG5cOVO+pfA0igYMGamtZsoLgNeBED+soAfy4C6T1iIN41wP1QEETR/G4guIBM06DRPpFqIk3hwXNNJnCiYb2znP5umRdwIvY0oF9KEo+pY6STE2mkk7mSi9hy9iuxkZGLrIhfDU73IikENGdG0Po1IRtathtJcRsU/8EmA2Vgg3KwQpWLqcwvC7Hi/9RAEAEIuo8i9Y+52n6zWOUvAd566KNmgHd/HnD/H/rvGzVlGIEVCQAB70lQPT5ImLRzICjpqeJNdN5vo4p0njJ2tQBUrsfBLNN0fjaQkDqQEYCFWTJCsQKDoapKUOJjlYSFt1UyLRZUCj57VSayDKtUKtS5UvwWzNtfke3Wwj+6z5S9oly23z6+7xe1nc8ue83xW63fCkv1WGmN7WYctt6EnfbZYN6EKK8eu2w3bZMZe+0TtctOuiCf4CIBPQjoQUAPBLptaqA1OJnWQ9jw+Nu6ev3MbkeewDP3NDfpQgKCmukLmQe79gY3+ui6bbedbmLEPuqaQZj5lQfNmOYjAUDyEaaVXqECQkjIQhaK+cDOaEDcYa2GAj11/NbugAHVEghcSNUikbjJ8CifRl7FcrkAS/WjpCpTKEcqe3ZRmmIFsrjZxIl3laBDSJVi6b2vklirV51SuYZLpmGNqxRW6hRULFN2m2jmUyZv6G6VoHKFss1uMz1qVSnc0mPhPY8cKXqVlaXa+HlkSMvGlLVBzkvTq+wcNG65BkXScVBBPzParnKyXLuAEtnKlULlscDFGljmpSRIZ8VcbcBXtJSgUzaxH3E3duECdZMD2CUak0v24XX4KP5AC8l+7Mz8SeuWummZcRqnLnJAGqfA9yLijzRA9uMadGc6eab7dim7w3zscjGxDwAA) format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAR8AA0AAAAABWAAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABUAAAAYGrXodhjbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAAC8AAAAvOFh37BoZWFkAAAC3AAAADYAAAA2Gl1rt2hoZWEAAAMUAAAAHwAAACQI7wN4aG10eAAAAzQAAAAXAAAAGAcgAEZsb2NhAAADTAAAAA4AAAAOAIQAhG1heHAAAANcAAAAHAAAACAAGwD4bmFtZQAAA3gAAADSAAABxiLhP1Fwb3N0AAAETAAAADAAAABG/7GrWAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothbcBgWEYBu9Nslb97aFTibWsUprEFIbQCBOZAX9+wh2uF30ToFfdAIvacuIsY9B+x0KNYlBeaTKbrBI3SHc//D7gBx0lEQHQoT6BhOYC/gqzeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJTMRIyABmP7M0NADDPz0ZAJEAAEAJv/0Al4CxgA1AAAFIi4CNTQ2NyM1MzcjNSE2NTQmIyIGByc+ATMyHgIVFAYHMxUjBzMVIQYVFBYzMjY3Fw4BAU85VTkdAQFHbIHtAWcFLSkkQRdKIG0/M1A3HQIDSnd88/6XAzUuI0AkTCNuDCI6TCsIDgdaRFoPESsmHRpdJS4eNEQlCxgMWkRaDA0xMCAnXSo2AAEAAAABAEGWNa8eXw889QAJA+gAAAAA2bzhOQAAAADc8kcQ/jL96wZeBFwAAQAJAAIAAAAAAAB42mNgZGBgifn7ioGBreaf0X9utjigCCpgAwCLcwVwAHjaY7zBoMAAAm8gmKmFQQ1EAwA1XgRqAAAAABMAEwATABMAXgBeAAB42mNgZGBgYGOYwMDDkMbACuYhADMDIwAY3QEUeNqNjTVyA0AQBNvMDh2bmRkSMzOzLWbm3+hdCvUSTbB1sQ52ehnoJkgbLe09wGdLp3EL49SNW1VTM25jl6pxO4tkjTsY4tu4k2nWjQdFECavm1bvkm4OH1ki8vPiRXLiuDRFlpDyd5xyzQWH3HCvTIAyT3hIkuOZsCjCgrIp5fy8Kp9FM+QnGWaFRVase9j1D7sJw27GMDbDevZcl6i57U6b2XdEijQVsuIQYfIMs8oyK+ww7CaoiixpFsUHxHWHcR3kkEdAGpAWZf0sNgCOlkFUAAB42mNgYgCD//sYUhiwATYgZmRkYmBmZGZkYS/NyzQwMHAB0UYGTiYQvqMBANd1CLA=) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/surround/assets/ibm-plex-sans-thai-thai-700-normal-0moayseG.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-thai-700-normal-Bo0ALcDh.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/surround/assets/ibm-plex-sans-thai-latin-ext-700-normal-BKYUUsrV.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-latin-ext-700-normal-CIKhqm8k.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/surround/assets/ibm-plex-sans-thai-latin-700-normal-Ct-BCS9V.woff2) format("woff2"),url(/surround/assets/ibm-plex-sans-thai-latin-700-normal-SmVfMUPf.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--ink: #0b0b0c;--screen-bg: #f7f6f2;--board-bg: #ffffff;--bg-raised: #ffffff;--grid-line: #e6e5e2;--border-subtle: #e6e5e2;--text: #1f1f1f;--text2: #555555;--text3: #8b8b88;--stone-o: #1c1c1e;--stone-o-glyph: #f8f8f6;--stone-o-edge: transparent;--win-glow: rgba(11, 11, 12, .16);--quick-glow: rgba(11, 11, 12, .22);--stone-x: #f1f0ec;--stone-x-glyph: #1c1c1e;--stone-x-edge: #96958f;--stone-glyph: #ffffff;--legal-dot: var(--text3);--terr-o: rgba(83, 93, 153, .18);--terr-x: rgba(138, 109, 59, .18);--cell-hover: var(--fill-softer);--error: #b04d67;--capture-ring: var(--error);--focus: var(--ink);--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 24px;--r-pill: 999px;--fill-soft: #efeeea;--fill-softer: #f4f3ef;--shadow-soft: 0 1px 3px rgb(0 0 0 / .05), 0 4px 16px rgb(0 0 0 / .05);--ease: cubic-bezier(.2, .7, .3, 1);--t-fast: .12s;--t-med: .2s;--t-slow: .34s;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-thai: "IBM Plex Sans Thai", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}html.dark{color-scheme:dark;--ink: #f2f1ee;--screen-bg: #0f1012;--board-bg: #18191c;--bg-raised: #18191c;--grid-line: rgba(255, 255, 255, .08);--border-subtle: rgba(255, 255, 255, .08);--text: #e7e7e5;--text2: #a0a09d;--text3: #6b6b68;--stone-o: #0b0c0e;--stone-o-glyph: #e7e7e5;--stone-o-edge: rgba(255, 255, 255, .38);--win-glow: rgba(242, 241, 238, .22);--quick-glow: rgba(242, 241, 238, .28);--stone-x: #f2f1ee;--stone-x-glyph: #131417;--stone-x-edge: transparent;--stone-glyph: #0f1012;--terr-o: rgba(152, 160, 212, .2);--terr-x: rgba(201, 168, 110, .22);--cell-hover: var(--fill-soft);--fill-soft: #202226;--fill-softer: #1a1c1f;--shadow-soft: 0 1px 3px rgb(0 0 0 / .3), 0 4px 16px rgb(0 0 0 / .3);--error: #cf8192}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-thai);background:var(--screen-bg);color:var(--text);-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.side-inline-confirm .side-confirm-btn{min-height:30px;font-size:13px;padding:0 10px;flex:none}.rail-actions .side-inline,.rail-actions .side-inline-confirm{width:100%;flex-wrap:wrap;row-gap:8px}.rail-actions .side-inline-confirm .side-inline-label{flex:1 1 100%}.move-strip .side-inline-confirm{min-width:0}.move-strip .side-inline-confirm .side-inline-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-version{position:fixed;left:12px;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:5;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--text3);pointer-events:none;-webkit-user-select:none;user-select:none}.btn{min-height:44px;padding:0 20px;border:none;border-radius:var(--r-pill);transition:background var(--t-fast) var(--ease),transform var(--t-fast) var(--ease);font:inherit;font-size:16px;font-weight:600;cursor:pointer}.btn:active:not(:disabled),.seg-btn:active,.menu-item:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45}.btn-primary{background:var(--ink);color:var(--screen-bg)}.btn-secondary{background:var(--fill-soft);color:var(--text);border:none}.btn-secondary:hover{background:var(--cell-hover)}.btn-tertiary{background:transparent;color:var(--text2)}.btn-tertiary:hover{background:var(--cell-hover);color:var(--text)}.menu-button{border:none;background:var(--fill-soft);border-radius:var(--r-pill);transition:background var(--t-fast) var(--ease),transform var(--t-fast) var(--ease);min-height:44px;padding:0 32px;font-family:var(--font-mono);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text)}.menu-button:hover{border-color:var(--focus);background:var(--cell-hover);color:var(--text)}.btn-destructive{background:color-mix(in srgb,var(--error) 10%,transparent);border:none;color:var(--error)}.btn-destructive:hover{background:var(--cell-hover)}.btn:disabled{opacity:.45;cursor:default}.btn:disabled:hover{background:transparent;border-color:var(--border-subtle)}.btn-primary:disabled:hover{background:var(--ink)}.icon-btn{min-width:44px;min-height:44px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1}.text-toggle{font-family:var(--font-mono);font-size:13px;font-weight:400;letter-spacing:.04em}.text-toggle .lang-active{font-weight:700;color:var(--text)}.text-toggle .lang-idle{color:var(--text3)}.game-screen{display:flex;flex-direction:column;min-height:100dvh}@media(min-width:980px){.game-screen{height:100dvh;overflow:hidden}.turnbar{height:64px;min-height:64px}.status-strip{height:48px;min-height:48px;overflow:hidden}.action-bar{height:64px;min-height:64px}}.skip-link{position:absolute;left:-9999px;z-index:20;padding:10px 16px;background:var(--bg-raised);color:var(--text);border:1px solid var(--border-subtle);border-radius:0 0 var(--r-md) 0}.skip-link:focus{left:0;top:0}.turnbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:8px 16px;padding-top:calc(8px + env(safe-area-inset-top,0px));background:transparent;border-bottom:none}.turnbar .menu-button{margin-left:auto}.turnbar-info p{margin:0}.turnbar-turn{font-size:17px;font-weight:700;display:flex;align-items:center;gap:8px}.turnbar-phase{font-size:14px;color:var(--text2)}.turnbar-move,.turnbar-match{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px}.turnbar-match{color:var(--text3)}.player-chip{display:inline-block;width:20px;height:20px;flex:none}.player-chip-draw{display:inline-flex;align-items:center;gap:4px;width:auto}.player-chip.player-chip-draw .stone{width:20px;height:20px}.board-stage{flex:1 1 auto;min-height:0;display:flex;align-items:stretch}.board-stage>*:nth-child(2){flex:1 1 auto;min-width:0}.board-stage-spacer{display:none}.move-rail{display:none;flex:none;align-self:start;width:300px;margin:32px 36px 0 20px;padding:22px 24px 18px;background:var(--bg-raised);border:none;border-radius:var(--r-lg);box-shadow:var(--shadow-soft)}@media(min-width:980px){.move-rail{display:block}}.rail-turn{display:flex;align-items:center;gap:12px}.rail-stone{display:inline-block;width:48px;height:48px;flex:none}.rail-stone .stone{width:100%;height:100%;animation:none}.rail-stone-draw{display:flex;align-items:center;gap:4px;width:auto}.rail-stone.rail-stone-draw .stone{width:22px;height:22px}.rail-turn-text{margin:0;font-size:28px;font-weight:600;line-height:1.25}.rail-phase{margin:8px 0 0;font-size:14px;color:var(--text2)}.rail-phase-meta{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--text3)}@media(min-width:980px){.turnbar-info{display:none}}.rail-undo{width:100%;margin-top:14px;min-height:40px;font-size:14px}.rail-undo:disabled{opacity:.45;cursor:default}.turnbar-undo{display:none}.turnbar-undo:disabled{opacity:.45;cursor:default}.turnbar-clock-box{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:76px;min-height:44px;padding:0 12px;border:none;background:var(--fill-soft);border-radius:var(--r-md);line-height:1}@media(max-width:979.98px){.turnbar-info{flex:1 1 auto;min-width:0}.turnbar-undo{display:inline-flex;align-items:center;justify-content:center;padding:0 14px}.turnbar-clock{font-size:24px;font-weight:700;color:var(--text)}.turnbar-move{font-size:13px;color:var(--text2)}.turnbar{gap:8px;padding-left:12px;padding-right:12px}.turnbar .menu-button{padding:0 16px}.turnbar-turn{white-space:nowrap}}@media(max-width:379.98px){.turnbar-clock-box{min-width:64px}.turnbar-clock{font-size:20px}.turnbar .menu-button{padding:0 12px}}.quick-intro-overlay{position:fixed;inset:0;z-index:40;display:flex;align-items:flex-start;justify-content:center;padding:18vh 20px 0;pointer-events:none}.quick-intro-card{max-width:340px;padding:14px 18px;border-radius:var(--r-lg);background:color-mix(in srgb,var(--bg-raised) 92%,transparent);border:1px solid var(--border-subtle);box-shadow:0 8px 28px #00000047;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);text-align:center;animation:quick-intro-in var(--t-med, .24s) var(--ease, ease) both}.quick-intro-text{margin:0;font-size:14px;line-height:1.5;color:var(--text)}.quick-intro-tap{margin:8px 0 0;font-size:11.5px;letter-spacing:.08em;color:var(--text3)}@keyframes quick-intro-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.quick-intro-card{animation:none}}.how-hint{display:flex;align-items:stretch;gap:8px;margin:8px 12px 0;border:none;border-radius:var(--r-md);background:var(--fill-soft)}.how-hint-open{flex:1 1 auto;min-width:0;min-height:36px;padding:0 12px;border:0;background:none;color:var(--text2);font-family:var(--font-mono);font-size:13px;letter-spacing:.06em;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.how-hint-open:hover{color:var(--text)}.how-hint-dismiss{flex:none;width:44px;border:0;border-left:1px solid var(--border-subtle);background:none;color:var(--text3);font-size:14px;cursor:pointer}.how-hint-dismiss:hover{color:var(--text)}@media(min-width:980px){.how-hint{display:none}}.aim-label{position:absolute;top:8px;left:8px;z-index:3;font-family:var(--font-mono);font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--text2);pointer-events:none;min-height:1em}@media(min-width:768px){.aim-label{top:12px;left:12px}}.board-grid{position:relative}.center-mark{position:absolute;left:50%;top:50%;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:var(--text3);opacity:.55;pointer-events:none;z-index:1}.board-area{position:relative}.zoom-toggle{position:absolute;right:8px;bottom:8px;z-index:3;display:inline-flex;align-items:center;justify-content:center;background:var(--fill-soft);border:none;border-radius:var(--r-md);color:var(--text2);transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.zoom-toggle:hover:not(:disabled){color:var(--text);background:var(--cell-hover)}.zoom-toggle[aria-pressed=true]{background:var(--cell-hover);color:var(--text)}@media(min-width:768px){.zoom-toggle{right:12px;bottom:12px}}.move-strip{flex:none;height:44px;min-height:44px;max-height:44px;padding:6px 12px;box-sizing:border-box;contain:layout paint}.move-strip-list{display:flex;align-items:center;gap:6px;height:100%;margin:0;padding:0;list-style:none;overflow-x:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;font-family:var(--font-mono);font-size:13px;font-variant-numeric:tabular-nums;mask-image:linear-gradient(to right,#000 90%,transparent);-webkit-mask-image:linear-gradient(to right,#000 90%,transparent)}.move-strip-list::-webkit-scrollbar{display:none}.move-chip{display:inline-flex;align-items:center;gap:6px;flex:none;height:28px;padding:0 8px;border:none;background:var(--fill-soft);border-radius:var(--r-md);color:var(--text3);white-space:nowrap}.move-chip:first-of-type{color:var(--text2)}.move-chip .stone{width:12px;height:12px}.move-chip-no{opacity:.7}.move-strip-empty{color:var(--text3);font-family:var(--font-thai)}@media(min-width:980px){.move-strip{display:none}}.coord-input-row{display:flex;align-items:center;gap:8px;width:100%}.move-rail .coord-input-row{margin-top:10px}.move-rail .coord-input{max-width:none}.coord-input{flex:1 1 72px;min-width:72px;max-width:88px;height:36px;padding:0 10px;border:none;background:var(--fill-soft);border-radius:var(--r-md);background:transparent;color:var(--text);font-family:var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums;letter-spacing:.08em;text-transform:uppercase}.coord-input::placeholder{color:var(--text3);text-transform:none}.coord-input:focus{outline:none;border-color:var(--text2)}.coord-input:disabled{opacity:.45}.coord-submit{flex:none;min-height:36px;min-width:44px;padding:0;font-size:15px;line-height:1}.coord-input.coord-input-error{border-color:var(--error);animation:coord-shake .3s ease-in-out}@keyframes coord-shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@media(prefers-reduced-motion:reduce){.coord-input.coord-input-error{animation:none}}.coord-mobile{flex:none;display:flex;align-items:center;height:40px;min-height:40px;max-height:40px;padding:2px 12px;box-sizing:border-box}.coord-mobile{gap:8px}.coord-mobile .coord-input-row{width:auto;flex:1 1 auto;min-width:0}.coord-mobile .coord-input{min-width:56px}.coord-mobile-score{margin-left:auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--text2);white-space:nowrap;flex:none}.coord-mobile-offer{min-height:36px;font-size:13px;padding:0 12px;flex:none}@media(min-width:980px){.coord-mobile{display:none}}@media(max-width:979.98px){.rematch-pill{bottom:calc(152px + env(safe-area-inset-bottom))}}.rail-score{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.rail-score-line{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:15px;color:var(--text2);white-space:nowrap}.rail-score-offer{flex:none;min-height:32px;padding:0 12px;font-size:13px;font-weight:600}.rail-actions{display:flex;flex-direction:column;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-subtle)}.rail-actions .rail-undo,.move-rail .rail-actions .coord-input-row{margin-top:0}.aim-chip{display:none}.rail-howto{align-self:flex-start;padding:0;border:0;min-height:32px;color:var(--text3);font-size:13px;letter-spacing:.08em;text-decoration:underline;text-underline-offset:4px}.rail-howto:hover{color:var(--text)}.rail-caption{font-family:var(--font-mono);font-size:13px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--text3);border-bottom:1px solid color-mix(in srgb,var(--border-subtle) 60%,transparent);padding-bottom:6px;margin:20px 0 8px}.rail-moves{list-style:none;margin:0;padding:0;max-height:60vh;overflow-y:auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:17px}.rail-move{display:flex;align-items:center;gap:12px;padding:5px 0;color:var(--text2)}.rail-move:first-child{color:var(--text)}.rail-move-no{width:3ch;text-align:right;color:var(--text3)}.rail-move-stone{display:inline-block;width:20px;height:20px;flex:none}.rail-move-stone .stone{width:100%;height:100%;animation:none}.rail-empty{color:var(--text3);font-family:var(--font-thai)}.player-chip .stone{width:100%;height:100%}.rail-clock{margin:8px 0 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:42px;font-weight:400;line-height:1;color:var(--text2)}.turnbar-clock{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px}@media(min-width:980px){.turnbar-clock{display:none}}.clock-low{color:var(--error)}.turnbar-clock.clock-low{font-weight:700}@media(prefers-reduced-motion:no-preference){.clock-critical{animation:clock-pulse 1s ease-in-out infinite}}@keyframes clock-pulse{0%,to{opacity:1}50%{opacity:.4}}.board-area{flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;padding:8px;overflow:auto}@media(min-width:768px){.board-area{padding:24px}}.board-wrap{display:flex;flex-direction:column;align-items:center;gap:4px}.board-middle{display:flex;align-items:center;gap:4px}.board-grid{display:flex;flex-direction:column;gap:1px;background:var(--grid-line);border:2px solid var(--ink);scroll-margin-block:64px;touch-action:manipulation}.board-row{display:flex;gap:1px}.cell{position:relative;width:var(--cell, 16px);height:var(--cell, 16px);padding:0;border:none;background:var(--board-bg);cursor:default}.cell.legal{cursor:pointer}.cell:focus-visible{outline:2px solid var(--ink);outline-offset:1px;z-index:2}@media(hover:hover){.cell.legal:hover{background:var(--cell-hover)}.cell.legal:hover .ghost-hover{opacity:.4}.cell.legal:hover .legal-dot{opacity:0}.cell:not(.legal):not(.occupied):hover{cursor:not-allowed}}.cell.pending:after{content:"";position:absolute;inset:0;border:1px dashed var(--ink);pointer-events:none}.legal-dot{position:absolute;top:50%;left:50%;width:max(4px,calc(var(--cell, 16px) * .25));height:max(4px,calc(var(--cell, 16px) * .25));transform:translate(-50%,-50%);border-radius:50%;background:var(--legal-dot)}.terr-layer{position:absolute;inset:0;pointer-events:none}.terr-layer.terr-o{background:var(--terr-o)}.terr-layer.terr-x{background:var(--terr-x)}.hoshi-dot{position:absolute;top:50%;left:50%;width:5px;height:5px;transform:translate(-50%,-50%);border-radius:50%;background:var(--text3);opacity:.55;pointer-events:none}.flash-overlay{position:absolute;inset:0;background:var(--cell-hover);animation:flash-fade .4s ease-out forwards;pointer-events:none}.preview-ring{position:absolute;inset:1px;border:1px solid var(--text2);border-radius:50%;pointer-events:none}@keyframes flash-fade{0%{opacity:.9}to{opacity:0}}.stone{position:relative;display:block;width:32px;height:32px;animation:stone-in .12s ease-out}.cell .stone{position:absolute;inset:1px;width:auto;height:auto}.coord-flip{display:inline-block;transform:rotate(180deg)}.stone-o{border-radius:50%;background:var(--stone-o);color:var(--stone-o-glyph);box-shadow:inset 0 0 0 1px var(--stone-o-edge)}.stone-x{border-radius:2px;background:var(--stone-x);color:var(--stone-x-glyph);box-shadow:inset 0 0 0 1px var(--stone-x-edge)}.stone-glyph{position:absolute;inset:0;width:100%;height:100%}.last-marker{position:absolute;inset:33%;background:currentColor;animation:last-pop .3s ease-out}.stone-o .last-marker{border-radius:50%}.stone-x .last-marker{inset:25%;border-radius:18%}@keyframes last-pop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.last-marker{animation:none}}.stone.ghost{opacity:.55}.stone.ghost-hover{opacity:0;animation:none}.stone.captured{box-shadow:0 0 0 2px var(--capture-ring);animation:capture-pulse .6s ease-in-out}.stone.atari{box-shadow:0 0 0 1px var(--ink);animation:atari-pulse 1.6s ease-in-out infinite}.board-grid.over .stone.dimmed{opacity:.85}@keyframes stone-in{0%{opacity:0}to{opacity:1}}@keyframes capture-pulse{0%,50%,to{transform:scale(1)}25%,75%{transform:scale(1.12)}}@keyframes atari-pulse{0%,to{box-shadow:0 0 0 1px var(--ink)}50%{box-shadow:0 0 0 1px transparent}}.coord-row,.coord-col{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;line-height:1;color:var(--text3);-webkit-user-select:none;user-select:none}.coord-row{display:grid;grid-template-columns:repeat(24,var(--cell, 16px));gap:1px;padding:0 2px;justify-items:center;height:16px;align-items:center}.coord-col{display:grid;grid-template-rows:repeat(24,var(--cell, 16px));gap:1px;padding:2px 0;align-items:center;width:16px;justify-items:center}.status-strip{min-height:44px;padding:4px 16px;text-align:center}.status-text{margin:0;font-size:14px;min-height:1.4em}.status-alert{color:var(--error)}.action-bar{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:56px;padding:8px 16px;padding-bottom:calc(8px + env(safe-area-inset-bottom));background:transparent;border-top:none;position:sticky;bottom:0}.pending-label{font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin-right:auto}.replay-label{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px;margin-right:auto}.offer-label{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;margin-right:auto;min-width:0}.rematch-pill{position:fixed;bottom:calc(72px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);border-radius:var(--r-pill);border:none;box-shadow:var(--shadow-soft);z-index:10}.modal{border:none;border-radius:var(--r-xl);box-shadow:var(--shadow-soft);padding:0;width:min(480px,calc(100vw - 32px));background:var(--bg-raised);color:var(--text)}.modal::backdrop{background:#00000059;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@media(prefers-reduced-motion:no-preference){.modal[open]{animation:modal-in var(--t-med) var(--ease)}@keyframes modal-in{0%{opacity:0;transform:scale(.96)}}}.modal-body{padding:24px;max-height:80dvh;overflow:auto}.modal-title{margin:0 0 16px;font-family:var(--font-mono);font-weight:700;font-variant-numeric:tabular-nums;font-size:22px}.modal-title:focus{outline:none}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px;flex-wrap:wrap}.modal-actions-stack{flex-direction:column;align-items:stretch}.menu-list{list-style:none;margin:0;padding:0;text-align:left}.menu-list li+li{border-top:1px solid var(--border-subtle)}.menu-item:after{content:"→";color:var(--text3);opacity:0;transition:opacity .12s ease-out,transform .12s ease-out}.menu-item:hover:not(:disabled):after{opacity:1;transform:translate(3px)}.menu-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:12px 16px;font-weight:600;border:none;border-radius:var(--r-md);background:none;transition:background var(--t-fast) var(--ease);font:inherit;font-size:16px;text-align:left;color:var(--text);cursor:pointer}.menu-item:hover{background:var(--cell-hover)}.menu-item:disabled{opacity:.45;cursor:default}.menu-item:disabled:hover{background:none}.settings-group{text-align:left}.settings-row{display:flex;gap:14px;align-items:flex-start;padding:14px 0;cursor:pointer}.settings-row+.settings-row{border-top:1px solid var(--border-subtle)}.settings-row>span{flex:1;min-width:0;font-weight:600;line-height:1.4}.settings-row input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--ink);flex:none}.settings-row small{display:block;color:var(--text3);font-size:13px;font-weight:400;margin-top:3px;line-height:1.45}.settings-row-control{justify-content:space-between;align-items:center;cursor:default}.settings-row-control .btn{flex:none}.settings-row-stack{flex-direction:column;align-items:flex-start;gap:10px;cursor:default}.seg-group{display:flex;width:fit-content;border:none;background:var(--fill-soft);border-radius:var(--r-pill);padding:3px}.seg-btn{min-height:44px;min-width:56px;padding:0 14px;border:none;border-radius:var(--r-pill);transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease);background:transparent;color:var(--text2);font-family:inherit;font-weight:600;font-variant-numeric:tabular-nums;font-size:14px;cursor:pointer}.seg-btn+.seg-btn{border-left:none}.seg-group[aria-labelledby=timer-setting-label] .seg-btn{font-family:var(--font-mono);font-weight:400}.seg-btn:hover{background:var(--cell-hover);color:var(--text)}.seg-btn[aria-checked=true]{background:var(--bg-raised);color:var(--text);box-shadow:var(--shadow-soft)}.seg-btn:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}.seg-btn:disabled{opacity:.4;cursor:not-allowed}.seg-btn:disabled:hover{background:transparent;color:var(--text2)}.side-btn{display:inline-flex;align-items:center;justify-content:center}.side-btn .stone{width:20px;height:20px;animation:none}.side-btn[aria-pressed=true]{background:var(--bg-raised);box-shadow:var(--shadow-soft);color:var(--text)}.how-to-play h3{margin:16px 0 4px;font-size:16px}.how-to-play p{margin:0 0 8px;line-height:1.5}.confirm-abandon p{margin:0}.win-overlay .modal-title{text-align:center;font-size:28px}.win-glyph{display:flex;justify-content:center;margin-bottom:12px}.win-glyph .stone{width:48px;height:48px}.win-glyph-draw{gap:12px;align-items:center}.win-glyph-draw .stone{width:32px;height:32px}.win-score{display:flex;justify-content:center;align-items:center;gap:14px;margin:2px 0 0}.win-score-side{display:inline-flex;align-items:center;gap:10px}.win-score-side .stone{width:22px;height:22px}.win-score-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:26px;line-height:1;min-width:1ch;text-align:center;color:var(--text2)}.win-score-side.is-winner .win-score-num{color:var(--text);font-weight:600}.win-score-sep{font-family:var(--font-mono);font-size:14px;color:var(--text3)}.win-score-side.is-winner .stone-o{box-shadow:inset 0 0 0 1px var(--stone-o-edge),0 0 0 1px var(--ink),0 0 10px 2px var(--win-glow)}.win-score-side.is-winner .stone-x{box-shadow:inset 0 0 0 1px var(--stone-x-edge),0 0 0 1px var(--ink),0 0 10px 2px var(--win-glow)}.win-score-unit{text-align:center;margin:4px 0 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text3)}.win-reason{text-align:center;margin:8px 0 0;font-size:13px;color:var(--text3)}.win-moves{text-align:center;margin:4px 0 0;color:var(--text2);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px}.win-match{text-align:center;margin:8px 0 0;color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px}.win-meta{text-align:center;margin:12px 0 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;color:var(--text2)}.ai-taunt{text-align:center;margin:12px 0 0;font-size:14px;font-style:italic;color:var(--text2)}.ai-taunt-rest{color:transparent;-webkit-user-select:none;user-select:none}.ai-taunt-typing:after{content:"";display:inline-block;width:1.5px;height:1em;margin-left:1px;margin-right:-2.5px;vertical-align:-.12em;background:currentColor}@media(prefers-reduced-motion:no-preference){.ai-taunt-typing:after{animation:taunt-caret 1s steps(1,end) infinite}}@keyframes taunt-caret{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.ai-taunt-typing:after{content:none}}.start-screen,.error-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;text-align:center}.start-screen{position:relative;overflow:hidden}.start-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.start-screen>*:not(.start-bg){position:relative;z-index:1}.start-screen>.start-topbar{position:absolute;z-index:2}.start-screen>.app-version{position:fixed;z-index:2}.ghost-board{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:max(100vw,100vh);height:max(100vw,100vh);width:max(100vw,100dvh);height:max(100vw,100dvh);color:var(--text);pointer-events:none;-webkit-user-select:none;user-select:none}.start-topbar{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));right:calc(16px + env(safe-area-inset-right,0px));display:flex;gap:4px;align-items:center}.start-title{font-family:var(--font-mono);font-weight:400;font-variant-numeric:tabular-nums;font-size:44px;margin:0;letter-spacing:.04em}.start-logo{display:block;width:220px;height:220px;margin:0 auto 4px;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}html.dark .start-logo{filter:invert(.94) brightness(1.05)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.start-tagline{margin:0;color:var(--text2)}.start-hint{margin:8px 0 0;font-size:14px;color:var(--text2)}.start-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px;width:min(280px,100%)}@media(prefers-reduced-motion:no-preference){.start-actions{animation:sl-rise var(--t-slow) var(--ease) both}@keyframes sl-rise{0%{opacity:0;transform:translateY(8px)}}}.error-details{max-width:100%;overflow:auto;text-align:left;font-family:var(--font-mono);font-size:12px;color:var(--text2)}.btn-with-meta{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding-top:8px;padding-bottom:8px}.btn-meta{display:block;font-family:var(--font-mono);font-size:12px;font-weight:400;letter-spacing:.02em;opacity:.7}.start-ai-level{width:100%}.start-ai-level .seg-btn{flex:1 1 0;min-height:36px}.start-board-size{width:100%}.start-board-size .seg-btn{flex:1 1 0;min-height:36px;font-variant-numeric:tabular-nums}.start-quick{box-shadow:0 0 18px var(--quick-glow),inset 0 0 0 1px var(--border-subtle);animation:quick-breathe 3s ease-in-out infinite}@keyframes quick-breathe{0%,to{box-shadow:0 0 12px var(--quick-glow),inset 0 0 0 1px var(--border-subtle)}50%{box-shadow:0 0 26px var(--quick-glow),inset 0 0 0 1px var(--border-subtle)}}@media(prefers-reduced-motion:reduce){.start-quick{animation:none}}.start-section-label{width:100%;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text3);text-align:left;margin-bottom:-4px}.start-opp{width:100%}.start-opp .seg-btn{flex:1 1 0;min-height:36px;white-space:nowrap}.start-quick-opp .seg-btn{white-space:nowrap}.start-divider{width:100%;height:1px;background:color-mix(in srgb,var(--border-subtle) 60%,transparent)}.start-quick-segs{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:-4px}@media(min-width:360px){.start-quick-segs{flex-direction:row;align-items:stretch}}.start-quick-opp{flex:1 1 auto;width:100%}.start-quick-opp .seg-btn{flex:1 1 0;min-height:36px}.start-quick-side{flex:0 0 auto;width:auto}.start-quick-side .seg-btn{flex:0 0 auto;min-height:36px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.start-quick-side .stone{width:20px;height:20px;animation:none}.start-ai-hint{margin:-4px 0 0;font-size:13px;color:var(--text3);text-align:center}.ai-dots{display:inline-block;width:1.2em;text-align:left;letter-spacing:.06em}@media(prefers-reduced-motion:no-preference){.ai-dots span{animation:ai-dot 1.2s ease-in-out infinite}.ai-dots span:nth-child(2){animation-delay:.2s}.ai-dots span:nth-child(3){animation-delay:.4s}}@keyframes ai-dot{0%,60%,to{opacity:.25}30%{opacity:1}}.clock-idle{opacity:.45}.menu-mode{margin:0 0 4px;padding:0 16px 10px;font-size:13px;color:var(--text3);text-align:left;border-bottom:1px solid var(--border-subtle)}@media(prefers-reduced-motion:reduce){.stone.captured{animation:stone-in .12s ease-out}.stone.atari{animation:none}.flash-overlay{animation-duration:.12s}}@media(min-width:980px){.board-stage{display:grid;grid-template-columns:320px minmax(0,1fr);gap:clamp(28px,3vw,44px);width:min(100%,1360px);margin:0 auto}.move-rail{display:flex;flex-direction:column;align-self:start;width:auto;min-height:0;max-height:calc(100% - 44px);margin:32px 0 0 20px}.rail-caption{flex:none}.rail-moves{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}.aim-label{display:none}.board-wrap{position:relative}.aim-chip{display:inline-block;position:absolute;left:0;bottom:100%;margin-bottom:2px;padding:2px 8px;border:none;border-radius:var(--r-md);background:var(--fill-soft);box-shadow:var(--shadow-soft);font-family:var(--font-mono);font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--text2);pointer-events:none;white-space:nowrap}.aim-chip:empty{visibility:hidden}}.side-inline{display:inline-flex;align-items:center;gap:8px}.side-inline-label{font-family:var(--font-thai);font-size:12.5px;color:var(--text2);white-space:nowrap}.side-inline .seg-btn.side-btn{min-height:28px;min-width:40px;padding:0 10px}.side-inline .side-btn .stone{width:16px;height:16px}.rail-resign{align-self:flex-start;padding:0;border:0;min-height:28px;font-size:13px;color:var(--text3)}.rail-resign:hover{color:var(--error);background:none}.menu-item-destructive{color:var(--error)}
