@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./space-grotesk-vietnamese-400-normal.B7xT_GF5.woff2) format("woff2"),url(./space-grotesk-vietnamese-400-normal.BIWiOVfw.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./space-grotesk-latin-ext-400-normal.CfP_5XZW.woff2) format("woff2"),url(./space-grotesk-latin-ext-400-normal.DRPE3kg4.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./space-grotesk-latin-400-normal.CJ-V5oYT.woff2) format("woff2"),url(./space-grotesk-latin-400-normal.BnQMeOim.woff) format("woff");unicode-range:u+00??,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./space-grotesk-vietnamese-700-normal.DMty7AZE.woff2) format("woff2"),url(./space-grotesk-vietnamese-700-normal.Duxec5Rn.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./space-grotesk-latin-ext-700-normal.BQnZhY3m.woff2) format("woff2"),url(./space-grotesk-latin-ext-700-normal.HVCqSBdx.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./space-grotesk-latin-700-normal.RjhwGPKo.woff2) format("woff2"),url(./space-grotesk-latin-700-normal.CwsQ-cCU.woff) format("woff");unicode-range:u+00??,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(./ibm-plex-sans-thai-thai-400-normal.Bt1rR4gi.woff2) format("woff2"),url(./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(./ibm-plex-sans-thai-latin-ext-400-normal.DBkYO1u-.woff2) format("woff2"),url(./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(./ibm-plex-sans-thai-latin-400-normal.CwmoKdEh.woff2) format("woff2"),url(./ibm-plex-sans-thai-latin-400-normal.YXrLwNa7.woff) format("woff");unicode-range:u+00??,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(./ibm-plex-sans-thai-thai-600-normal.DvfsyWAn.woff2) format("woff2"),url(./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(./ibm-plex-sans-thai-latin-ext-600-normal.BXI6PlF4.woff2) format("woff2"),url(./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(./ibm-plex-sans-thai-latin-600-normal.BR-dhaTH.woff2) format("woff2"),url(./ibm-plex-sans-thai-latin-600-normal.P_JjY83V.woff) format("woff");unicode-range:u+00??,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:400;src:url(./ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2) format("woff2"),url(./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(./ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2) format("woff2"),url(./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(./ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2) format("woff2"),url(./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(./ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2) format("woff2"),url(./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(./ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2) format("woff2"),url(./ibm-plex-mono-latin-400-normal.CvHOgSBP.woff) format("woff");unicode-range:u+00??,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-paper:oklch(22% .005 70);--color-paper-2:oklch(25% .006 70);--color-paper-3:oklch(29% .008 70);--color-ink:oklch(94% .008 75);--color-muted:oklch(73% .009 75);--color-rule:oklch(35% .008 70);--color-accent:oklch(80% .105 73);--color-accent-ink:oklch(22% .02 73);--color-focus:oklch(90% .025 80);--color-error:oklch(80% .13 30);--color-success:oklch(80% .1 140);--color-transparent:transparent;--color-scrim:oklch(12% .005 70 / 78%);--color-sheen:color-mix(in oklch, var(--color-ink) 8%, var(--color-transparent));--font-display:"Space Grotesk", "IBM Plex Sans Thai", sans-serif;--font-body:"IBM Plex Sans Thai", sans-serif;--font-mono:"IBM Plex Mono", monospace;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--text-sm:.875rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.5rem;--text-display:clamp(2rem, 3.1vw, 3.25rem);--radius-sm:6px;--radius-md:12px;--radius-lg:18px;--dur-fast:.12s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);color-scheme:dark}*{box-sizing:border-box}body,html{overflow-x:clip;margin:0;background:var(--color-paper);color:var(--color-ink);font:16px/1.6 var(--font-body);touch-action:manipulation}body{min-width:320px;min-height:100vh}button,input,textarea{font:inherit}a,button{-webkit-tap-highlight-color:var(--color-transparent)}button{white-space:nowrap}a,button{color:inherit}a{text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}a,button{transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}button:active:not(:disabled){transform:translateY(1px)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}h1,h2,h3{min-width:0;margin:0;font-family:var(--font-display);font-style:normal;font-weight:700;line-height:1.2;overflow-wrap:anywhere;letter-spacing:-.035em}h1{font-size:var(--text-display)}h2{font-size:var(--text-lg)}p{margin:0 0 var(--space-md)}small{color:var(--color-muted);font-size:var(--text-sm)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.app-shell{min-height:100dvh}.sidebar{display:none}.workspace{min-width:0}.topbar{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-bottom:1px solid var(--color-rule);color:var(--color-muted);font-size:var(--text-sm)}.mobile-brand{color:var(--color-ink);font:700 1rem/1 var(--font-display);letter-spacing:-.04em}.today-label{text-align:right;font-size:.75rem}main{width:min(100%,1120px);margin:0 auto;padding:24px 20px 108px}.page-content{padding-bottom:var(--space-lg)}.page-stack{display:grid;gap:var(--space-xl)}.page-heading{display:flex;min-width:0;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-lg)}.page-heading h1{margin:0}.eyebrow{margin:0;color:var(--color-muted);font-size:.65rem;font-weight:600;letter-spacing:.14em}.card-title-row,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-width:0}.section-heading{align-items:flex-start;flex-direction:column}.section-heading>div{min-width:0}.card-title-row h2,.section-heading h2{font-size:var(--text-lg)}.section-heading .eyebrow{margin-bottom:var(--space-xs)}.text-link{min-height:44px;display:inline-flex;align-items:center;color:var(--color-accent);font-size:var(--text-sm);white-space:nowrap}.date-card,.profile-card,.progress-card{min-width:0;padding:var(--space-lg);border-radius:var(--radius-md);background:var(--color-paper-2)}.date-card-heading{justify-content:space-between;margin-bottom:var(--space-md)}.date-card-heading,.month-chip{display:flex;align-items:center;gap:var(--space-sm)}.month-chip{min-height:44px;padding:0 12px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-3);font-size:var(--text-sm)}.month-chip span{color:var(--color-muted)}.week-controls{display:flex;gap:var(--space-xs)}.icon-button{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-muted);font-size:22px;cursor:pointer}.week-strip{grid-template-columns:repeat(7,minmax(0,1fr))}.week-day,.week-strip{display:grid;gap:var(--space-xs)}.week-day{min-width:0;min-height:58px;place-items:center;align-content:center;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-ink);cursor:pointer}.week-day span{color:var(--color-muted);font-size:.7rem}.week-day strong{font-family:var(--font-mono);font-size:.8rem;font-weight:400}.week-day.selected{background:var(--color-accent)}.week-day.selected,.week-day.selected span{color:var(--color-accent-ink)}.card-title-row{margin-bottom:var(--space-md)}.progress-content{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-md) 0}.progress-ring{width:124px;height:124px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--color-accent) var(--progress),var(--color-paper-3) var(--progress))}.progress-ring>span{width:98px;height:98px;display:grid;align-content:center;justify-items:center;border-radius:50%;background:var(--color-paper-2)}.progress-ring small{font-size:.7rem}.progress-ring strong{font:700 1.7rem/1 var(--font-display)}.summary-stats{display:grid;flex:1;gap:var(--space-md)}.summary-stats>div{display:flex;align-items:center;gap:var(--space-sm)}.summary-stats p{display:grid;gap:var(--space-xs);margin:0}.summary-stats small{font-size:.75rem}.summary-stats strong{font:700 1.25rem/1.2 var(--font-display)}.summary-dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--color-accent)}.summary-dot.orange{background:var(--color-error)}.summary-footer{display:flex;justify-content:space-between;gap:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--color-rule);color:var(--color-muted);font-size:.75rem}.summary-footer strong{padding-left:var(--space-xs);color:var(--color-ink);font:400 .85rem var(--font-mono)}.section-block{display:grid;gap:var(--space-sm);min-width:0;padding:0 0 var(--space-md);border-bottom:1px solid var(--color-rule)}.planner-list{display:grid}.planner-row{display:flex;align-items:flex-start;gap:var(--space-md);min-width:0;padding:var(--space-md) 4px;border-top:1px solid var(--color-rule)}.item-kind,.profile-icon{width:40px;height:40px;flex:0 0 auto;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--color-paper-3);color:var(--color-accent)}.item-kind.reminder{color:var(--color-error)}.planner-copy{display:grid;min-width:0;flex:1;gap:var(--space-xs)}.planner-copy>strong{overflow-wrap:anywhere;font-weight:600}.planner-copy p{margin:0;color:var(--color-muted);font-size:var(--text-sm)}.item-meta{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-muted);font:.75rem var(--font-mono)}.count-chip,.push-badge,.status-chip{width:-moz-fit-content;width:fit-content;padding:4px 8px;color:var(--color-muted);font-size:.7rem}.complete-button,.count-chip,.push-badge,.status-chip{border:1px solid var(--color-rule);border-radius:var(--radius-sm)}.complete-button{width:40px;height:40px;flex:0 0 auto;background:transparent;color:var(--color-accent);cursor:pointer}.complete-button,.empty-state{display:grid;place-items:center}.empty-state{min-height:84px;padding:var(--space-lg) var(--space-md);border-top:1px solid var(--color-rule);color:var(--color-muted);font-size:var(--text-sm);text-align:center}.count-chip{height:30px;display:grid;place-items:center;padding:0 8px;color:var(--color-accent);font:.8rem var(--font-mono)}.bottom-nav{position:fixed;z-index:40;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:8px 8px max(8px,env(safe-area-inset-bottom));border-top:1px solid var(--color-rule);background:var(--color-paper-2)}.nav-item{min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:var(--color-muted);font-size:.625rem;white-space:nowrap}.nav-item.active{color:var(--color-accent)}.nav-add{width:44px;height:44px;justify-self:center;display:grid;place-items:center;border:0;border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-ink);cursor:pointer}.app-footer{display:none}.sheet-backdrop{position:fixed;z-index:50;inset:0;display:flex;align-items:flex-end;justify-content:center;padding-top:40px;background:var(--color-scrim)}.composer-sheet{width:min(100%,560px);max-height:90dvh;overflow-y:auto;padding:12px 20px calc(var(--space-lg) + env(safe-area-inset-bottom));border:1px solid var(--color-rule);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-paper-2)}.sheet-handle{width:40px;height:4px;margin:0 auto 16px;border-radius:var(--radius-sm);background:var(--color-rule)}.sheet-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.sheet-heading h2{margin:0}.planner-form{display:grid;gap:var(--space-sm)}.auth-form label,.field-label{color:var(--color-muted);font-size:var(--text-sm)}.auth-form input,.text-input{width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink)}textarea.text-input{resize:vertical}.kind-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.google-button,.kind-switch button,.secondary-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:8px 12px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-3);color:var(--color-ink);font-size:var(--text-sm);cursor:pointer}.kind-switch button.selected,.status-chip.ready{border-color:var(--color-accent);color:var(--color-accent)}.push-toggle{min-height:52px;display:flex;align-items:center;gap:var(--space-sm);padding:12px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);cursor:pointer}.push-toggle input{accent-color:var(--color-accent)}.push-toggle span{display:grid;gap:var(--space-xs)}.push-toggle strong{font-size:var(--text-sm)}.push-toggle small{font-size:.75rem}.primary-button{min-height:46px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-ink);font-weight:700;cursor:pointer}.primary-button:disabled,.secondary-button:disabled{opacity:.5;cursor:wait}.form-message{margin:0;font-size:var(--text-sm);line-height:1.5}.error-message{color:var(--color-error)}.success-message{color:var(--color-success)}.global-error{margin:12px 0;padding:12px;border-radius:var(--radius-sm);background:var(--color-paper-3);color:var(--color-error);font-size:var(--text-sm)}.profile-card{display:grid;gap:var(--space-md);min-width:0}.profile-card h2{font-size:var(--text-lg)}.profile-card p{margin:0;color:var(--color-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.profile-top{display:flex;align-items:center;gap:var(--space-md);min-width:0}.profile-top>div{min-width:0}.profile-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.status-chip{margin:0}.setup-message{width:min(calc(100% - 40px),560px);min-height:60dvh;display:grid;align-content:center;margin:0 auto;padding:var(--space-lg);background:var(--color-paper-2)}.setup-message h1{margin:var(--space-sm) 0;font-size:var(--text-lg)}.setup-message p{color:var(--color-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.auth-card{width:min(calc(100% - 40px),440px);display:grid;gap:var(--space-md);margin:var(--space-3xl) auto;padding:var(--space-lg);background:var(--color-paper-2)}.auth-card h1{font-size:clamp(1.65rem,7vw,2.2rem);line-height:1.3}.auth-intro{margin:0;color:var(--color-muted);font-size:var(--text-sm)}.auth-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xs);padding:var(--space-xs);border:1px solid var(--color-rule)}.auth-switch button{min-height:40px;border:0;background:transparent;color:var(--color-muted);font-size:var(--text-sm)}.auth-switch button.selected{background:var(--color-paper-3);color:var(--color-accent)}.google-button{width:100%}.auth-divider{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-muted);font-size:.75rem}.auth-divider:after,.auth-divider:before{height:1px;flex:1;background:var(--color-rule);content:""}.auth-form{display:grid;gap:var(--space-sm)}.auth-submit{margin-top:var(--space-xs)}.privacy-note{margin:0;color:var(--color-muted);font-size:.75rem}.skeleton-page{display:grid;gap:var(--space-lg);min-width:0}.skeleton{display:block;position:relative;overflow:hidden;flex:0 0 auto;border-radius:var(--radius-sm);background:var(--color-paper-2)}.skeleton:after{position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,var(--color-transparent),var(--color-sheen),var(--color-transparent));animation:skeleton-sweep 1.5s var(--ease-in-out) infinite;content:""}@keyframes skeleton-sweep{to{transform:translate(100%)}}.sk-title{width:min(340px,78%);height:38px}.sk-eyebrow{width:110px;height:10px}.sk-panel{height:132px}.sk-date,.sk-panel{border-radius:var(--radius-md)}.sk-date{height:118px}.sk-row{height:72px;border-top:1px solid var(--color-rule);background:linear-gradient(var(--color-paper-2),var(--color-paper-2)) 8px 20px /40px 40px no-repeat,linear-gradient(var(--color-paper-2),var(--color-paper-2)) 60px 24px /55% 12px no-repeat,linear-gradient(var(--color-paper-2),var(--color-paper-2)) 60px 46px /35% 10px no-repeat}.sk-row:after{display:none}.sk-card{height:96px;border-radius:var(--radius-md)}.skeleton-section{display:grid;gap:var(--space-sm)}.skeleton-section .sk-row+.sk-row{border-top:1px solid var(--color-rule)}.boot-loading{padding-top:var(--space-3xl)}@media(hover:hover){.complete-button:hover,.google-button:hover,.icon-button:hover,.kind-switch button:hover,.month-chip:hover,.nav-item:hover,.secondary-button:hover,.week-day:not(.selected):hover{background-color:var(--color-paper-3)}.nav-item:hover,.text-link:hover{color:var(--color-accent)}.nav-add:hover,.primary-button:hover{opacity:.88}}@media(min-width:40rem){main{padding:36px 32px 112px}.topbar{padding-inline:32px}.page-heading{margin-bottom:var(--space-xl)}.section-heading{align-items:center;flex-direction:row}.date-card,.profile-card,.progress-card{padding:28px}.progress-content{gap:var(--space-xl)}.auth-card{padding:var(--space-xl)}}@media(min-width:64rem){.app-shell{display:grid;grid-template-columns:232px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;padding:36px 20px 20px;background:var(--color-paper-2)}.brand{display:flex;align-items:center;gap:12px;padding:0 12px;font:700 1.8rem/1 var(--font-display);letter-spacing:-.06em}.brand-sub{display:block;margin-top:8px;color:var(--color-muted);font-size:.6rem;letter-spacing:.23em}.brand-mark{height:40px;display:flex;align-items:center;gap:var(--space-xs);color:var(--color-accent)}.brand-mark i{width:3px;height:24px;border-radius:4px;background:var(--color-accent)}.brand-mark i:nth-child(2){height:40px}.brand-mark i:nth-child(3){height:30px}.brand-mark i:nth-child(4){height:16px}.sidebar-caption{margin:56px 12px 20px;color:var(--color-muted);font-size:.6rem;letter-spacing:.12em}.sidebar nav{display:grid;gap:var(--space-sm)}.nav-item{min-height:48px;display:flex;align-items:center;justify-content:flex-start;flex-direction:row;gap:12px;padding:12px;border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm)}.nav-item.active{background:var(--color-paper-3);color:var(--color-accent)}.desktop-add{min-height:48px;justify-content:flex-start;margin:20px 0;border-radius:var(--radius-sm)}.sidebar-bottom{margin-top:auto;padding:28px 8px 0;border-top:1px solid var(--color-rule);color:var(--color-muted);font-size:.75rem}.sidebar-bottom p{margin:var(--space-sm) 0 20px;font-size:.75rem}.app-footer{display:flex;justify-content:space-between;gap:var(--space-md);padding:20px 32px;border-top:1px solid var(--color-rule);color:var(--color-muted);font-size:.7rem}main{padding:48px 48px 80px}.bottom-nav{display:none}.topbar{padding:20px 48px}.mobile-brand{display:none}.today-label{display:inline}.date-card{max-width:680px}.progress-card{max-width:760px}.profile-card{max-width:840px}.sheet-backdrop{align-items:center}.composer-sheet{max-height:min(88dvh,760px);border-radius:var(--radius-md)}.boot-loading{width:min(100%,1120px);margin:0 auto;padding:48px}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
