@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-cyrillic-400-normal-DnEqMUkt.woff2) format("woff2"),url(/assets/geist-cyrillic-400-normal-DoYExElg.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-latin-ext-400-normal-BP0SqLoz.woff2) format("woff2"),url(/assets/geist-latin-ext-400-normal-CxhClfoC.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:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-latin-400-normal-DSkA1yZt.woff2) format("woff2"),url(/assets/geist-latin-400-normal-BnFbi-1n.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:Geist;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geist-cyrillic-500-normal-C6JjjZZ1.woff2) format("woff2"),url(/assets/geist-cyrillic-500-normal-DEcJ8qix.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geist-latin-ext-500-normal-0UPWgPJt.woff2) format("woff2"),url(/assets/geist-latin-ext-500-normal-Cp7xHeNA.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:Geist;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geist-latin-500-normal-DJ9fwJi3.woff2) format("woff2"),url(/assets/geist-latin-500-normal-CIqOcbcu.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=) format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAbUAA8AAAAACOgAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABgAAAAcABQABEdQT1MAAAFwAAAAHgAAAB5EdEx1R1NVQgAAAZAAAAAnAAAAKLj8uOpPUy8yAAABuAAAAFEAAABgFwRca1NUQVQAAAIMAAAARgAAAF7mY9MfY21hcAAAAlQAAABRAAAAdAyHCodnYXNwAAACqAAAAAgAAAAIAAAAEGdseWYAAAKwAAAB6QAAAl7g5OpvaGVhZAAABJwAAAA2AAAANhSQ8UNoaGVhAAAE1AAAAB8AAAAkAcoBImhtdHgAAAT0AAAAHgAAADofBAM2bG9jYQAABRQAAAAgAAAAIATcBZ9tYXhwAAAFNAAAABwAAAAgAIcCb25hbWUAAAVQAAABEgAAAoA4pV3kcG9zdAAABmQAAABwAAAAlNdzMTB42mNgZGBg4GGAAEYgZAWTjCAeAAG0ABkAAQAAAAoAHAAcAAFERkxUAAgABAAAAAD//wAAAAAAAHjaY2BkYGDgYlADQiYXN58QBqGcxJI8Bj4GEGABEf//g0gAWkkFVQB42mNgYYpinMDAysDA1MUUwcDA4A2hGeMYjBgdgKIMDJwMUMDEzoAEvJyAxAEGXpaXzH/+XWFgYP7DqKPAwDj//nWgSjWmW0BZBQZWABNDDdYAAAB42kXIIQIBARQFwHl/QQIkWXInUAANXMOBJCcTd+KIGCjMNViq9/H0CM6P/S0j0bOwUqh08iEb8kPTXn3RiMoYhD90Nwc3AAB42lXIRwHCQBAF0JceehWAlTjhjikUgAVQA4mJLbdk5neUqHBVKWSv3XF2VCnt3AyevkVZv+sxBBbbq/6HfFP4hEcYQgEK82v1aHQ5RTs3FRQAAAAAAQAB//8AD3jabZA1tNRAFEDfTGDdfXHI2QQnZJJvK5ngDs13Welwt/78CtcS7xvcrcHKbXCtceh+wgtu437nXRCgC4BY9AGOXOAFYNHR0dzoKCGju8gJ6xiZaF3DWqcPBiSV5i2geaCgAlAJ77ghgjfiLC7KojvOZEmSXS63emXr5W7lsTLtXFMkRmks4ly+cYOEnvO2YLDNANv+9oJwhkpAAJAcHPG/1RC2BERc1ZGGMxYVWDyVSjc0NMaZELUf9e4JhCgNB3b2PiJRctuqZ0WPR8zilxutN/ji97vUBYMAnGjtzxjtK3wrDaMABo+R9KjWwNRUMppwuWS1QdfFZCIlMF2TxDGuJJlYW7OmVlvD+sx86b1hvC/l8yXf2hqZ66xbZ80yWzyD9/fzGaRzA58+nSOzYC+gw9AP+vyNqUAUhoD4lSnputbgUFPJ5O9Y+ReWlxkrc96naX08b3zk/KORb+E+VjYPmH1M6+UHeVlDtCzzGZ9FY8YMA8gPMsQA0jqaGkHT6cYSdVwl7Zs9Wzx+DyWUugPujd03T52ikrUvM26kF9PIcRmycuDBKcd3XRhPDgtnQACINzJ3fVl1tTB++3bc2S7kyD3cCQIQNMcSKaY2YOciE+d0zFbGjps6u0PILTFlRZHNJfAFnfeHtgAAAAABAAAAAjYEro52gl8PPPUAAwPoAAAAANvSppoAAAAA29rQ8vk5/tQEkgP8AAAABgACAAAAAAAAeNpjYGRgYP7z7woDA8uGn5Z/+1kmAUVQAR8Ar8AG6gB42mOKYIgCYiMkrAzCUHEbJJoBikHgCkMPAPDwCFUAAAAAABoAOwBGAFEAbwB3AKkAsQDmAQkBCQEJAQkBFgEveNpjYGRgYOBn3MGQx7CFgQ3MQwBmBiYALRoB+HjajJADbgVQEEXPZ20bQW3bthvXbr8Vp4to1KV0AV1Wb9JvZzJvzhvcB6CQL0wYzHnAj6E/yAYaDeVBNlJsMAfZxCy/QTbTy3eQLdTzGWQr3VwGuZhx2v/ZAIVUB9kc0TSUKJ8f5FIRHGPjnWs+2MKt+MYzt1xwr/jIk3JymR0X0wzIXKo7VbXjFvfLn3lTtCn7qPoB6+yyzb3qy8pdq/6hrj11fMj7OFbtEY+mrlU/516rVFCdVobplw/JEjVaCaqIYlUiUzOaW9aa/Q1idmlPXZHbCagW/B10XwaRi06VuVdMf+9DnIov6rlF8yzhUXxC/4c66Uz48UepqEN9N/Tzt2RwjOljsUUfj581AbaEXsIAAHjaY2BiAIP/qQxGQIqRAR3wA7EKw0lGJgYbRmZGFkZWRjZGdgZmRg5GTkYuRm42x6Si1LJU9tK8TAMTR1cI7WoB5btB+Zas6Ym5uYlgnoGjAZNzEF9icmlJanJ+bpJecmJxKg9IxtjADMwBAKDtHJg=) 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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAASUABAAAAAACRAAAAQ3AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3oLIAABNgIkAzoEIAWFHgeBFAwHG3AHKB4HzukrRjyF5Gb4kQ/B873d17mv8TWkoqUUGaHodJCtoqntw7m8tiPWyGkfWDU/IMpzVk4zAs9Czv3c7Os5NvKFG1Ht9vBVXySRZpJc4tTrbM3sTRFcLa3zVboKWRIoAksKSKgqUQWEwlSoqjp44V5J9/kjd0+Fi5xaFjwJArgBAIJgIAgCCAI4CdNMqGuYXYUKdADLAkAAJwl6iX0+bZqEm1AH0Hu9rvrJHwxQG1Q/gFYwWYbgTRWgwEESVzbmtjQAt3DXO7Tu/+9Q/KNKWhTCgZ8fQSWoL0CUUgTBjgL8iEAcce7YHBeA8ZvogieCnxI0BCVeACCAAhBD/oDcAdUPABSgAX4kBPBTwjCAjwYSCneiqF65LUo/qXdYFrRwTujtMrKm07plTbSqLQFAiHBN7E4DG5wkiGXhCYBNETh3K/AciHN69iFfQjFOr9EXQQAAQXRNszs8PR0OH4fDV/dwGe76CHdj1MQa11DXYGcfZ6+B1X0OfwjY+i7KpQ1w9d+1z3/HydCB1f3U8A0fRFv+0bXxPWrZu3d9Nn4UcbLs/QCXLH/j3PCKblKOiZxLOR78W9brPo7eGTLz/F27ZPmePQdCB1YP4nJU91o4gU9cy64L3c3SPu8GfDn6ZXD2cGmllVqSxtD5vCXHm5xaeHlnpffx7DcPvXog5NnjA//cPz2btsz3yf+0MI8ri33tuv7upNbYmW5STbosW8bYItV/SPzxvXC0KnpWnFdC91oojit5Lyo6WcJQ1YzwBYbi52ohJVpcxfcHBqsv0nFz8U74rzS6M7r0RVlXZ3jJC4G92O//7Lm78VOtnUx+aQxAzsqPnrRr1t9zDrezKePvZ027x+fGte4s4NXu7/jEp3G9cM1bICYgACbuETUUD5wmenGXA/IBpAKVrl0AEJ5cqr6Q89tGq+SpqkDfX2DtG+pZ9teuae0AX98c301CX179InyErnSG8WCiABB4HFbVrw/lpTdBIOk82nXbpHKoQGyBpUovAAD4XQA8ZTUCeBJHIpI0v0FRrgcnckV3ANckrwYJKXEihQfdSKPER6XeExmEeEMmSe6QBwWmkZdmSOSthhibgIkBlUYreBKd/0NeVAE9WAyEaQpH6KikDWlUVg43Jy2FOmaYlsZhDEGZXO3mWEyWHI6zuaJkMlcSQ9k4F+KidIiFyZItGDc7r1pUj6wP6zrWB0/fbeeFeHl4YOvETMNiM8Ny+7OO6Qh2wur20YVxFts5dlORdl5Kwd5utR7SRcxqX8RA5Ehacha76hg7c6yzNm/Xf6vOLNrv544lIEkWg7xWo/ItBAeIJEmt0XgBwgM8gTifoiiLJroYYooNTeziEKe4zOoR/wvIKp89hSr+6jFAqw/LaonjmZHSscMNg4iPlWpFrO1RN3zkMU+/xUP+JQ99TbvTl1Vg0gtirT6lbwYAAAA=) format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAbQAA8AAAAACMAAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABgAAAAcABQABEdQT1MAAAFwAAAAHgAAAB5EdEx1R1NVQgAAAZAAAAAnAAAAKLj8uOpPUy8yAAABuAAAAFEAAABgF2hca1NUQVQAAAIMAAAAPQAAAEzpM8woY21hcAAAAkwAAABRAAAAdAyHCodnYXNwAAACoAAAAAgAAAAIAAAAEGdseWYAAAKoAAAB8AAAAl604cJFaGVhZAAABJgAAAA2AAAANhSS8UNoaGVhAAAE0AAAAB8AAAAkAcwBEGhtdHgAAATwAAAAHwAAADoe/QLmbG9jYQAABRAAAAAgAAAAIATcBZ9tYXhwAAAFMAAAABwAAAAgAIcCb25hbWUAAAVMAAABEwAAAmo0OV08cG9zdAAABmAAAABwAAAAlNdzMTB42mNgZGBg4GGAAEYgZAWTjCAeAAG0ABkAAQAAAAoAHAAcAAFERkxUAAgABAAAAAD//wAAAAAAAHjaY2BkYGDgYlADQiYXN58QBqGcxJI8Bj4GEGABEf//g0gAWkkFVQB42mNgYYpi/MLAysDA1MUUwcDA4A2hGeMYjBgdgKIMDJwMUMDEzoAEvJyAxAEGXpaXzH/+XWFgYP7DqKPAwDj//nWgSjWmW0BZBQZWADbPDjoAAAB42gXBsQ1AABQFwHsfiY5CYQBDaVVIlBL7mckA7kT0CpPCop79uIPz3q4MojUrSJePvNSKRlRGEH74hwYNAAAAeNpVyEcBwkAQBdCXHnoVgJU44Y4pFIAFUAOJiS23ZOZ3lKhwVSlkr91xdlQp7dwMnr5FWb/rMQQW26v+h3xT+IRHGEIBCvNr9Wh0OUU7NxUUAAAAAAEAAf//AA942mzQNZTUQAAG4H9mIDlbySoOt5I9HHZiL+vS4VDh7u40OFRo3+FQ464V7tbiUmHdJczicsm4fe/9YBgDEIc+BYOEeoArzUqyWSGkeQzZ6+wmfZwLot6nT1vVNM04oBlQ9AZoX3FHhh/gQR6Mp+JykKdUNSVJcu9T20/N73OrT3F/2qMw5vfWLp88SQL3rFE+3ygTrvv9BXaMqiCAkD3d2lr1ipagK4QqNDHjCuPBSCRqGGaQM+XLk0XrPX5GlaY1i54QD7nhvO/c3+Pp35mEHO58dN2fd6mEdgAYRrhfqEyfi7ei6AG0j6m6ohk8HQkrIUlKpQ1dj4dDEcZ1TY3HpDDpM3PZspkzl+lTqlbmZUYUy8o0LJtKSlOXLp3qnC9N1ieU7FWr7BIZPssuFm1hpt3BVBW/yPMPcwAUdEL8m6nqumbU1Eg4/Ceb+s2WpxrG1HKtnVKxcm9zolhWrkGbVN5RmqQJdGdpkj6ukGluzhTed7ULBRvkp4wAENVFUt1oNGrmaS2r8JcrCxfJjXWUUCo3yvMXXDlyhKrO3mhLj/qGhvoeLREyvvXpEYDgGutFDrFjYEDQ5PK1OcsWs15bt4JgM0uQe2LHAxCRHA9FeNoQnUS+Tsc7JkRXVV03JIZZJcBJRUdHxSmAAQCFZYU3AAEAAAACNgQJCtdkXw889QADA+gAAAAA29KmmgAAAADb2tDy+Tv+1ASSA/wAAAAGAAIAAAAAAAB42mNgZGBg/vPvCgMDy4af1n9rWSYBRVABHwCudAbaAHjaY4pgiAJibSQsC8WBQGyERDNAMQicZmgFAOeFB/4AAAAAGgA7AEYAUQBvAHcAqQCxAOYBCQEJAQkBCQEWAS942mNgZGBg4GfcwZDHsIWBDcxDAGYGJgAtGgH4eNqM0IFGQ2EUB/DfqqJMBZLAFUh0V0MoUBGllKQArHVtN9vu3HuH3iEAPUJP0cP0BD1D3D6zKQqHH9/5n885qHs1qza3iPfaenDNts/gGcs+gmcdeAuem+iZt+EleMGWx+Bl++Jv16jbDJ5Xtxa8om4peNUSbmT6WgbOlFp6Um2XEo9SI333EqmOrrKq0lDhQENDoS2XGioVYoVUTyyT62i4curCuUTpWK4lNVC4lBnI7Ez9dCeRK6TVa6Qp1rRnb0KHzh07/PfMG4mOkZ6W/JdUNM5FU7kTmaFn+Xj3SNNuVZFbXYnoj3nXcpkniXaVPzKqbpjJq86tH/fsSKuOkQextkzf1/Sx2KKPx/+aADN1XKsAeNpjYGIAg/+pDEZAipEBHfADsQrDSUYmBhtGZkYWRlZGNkZ2BmZGDkZORi5GbjbHpKLUslT20rxMAxNHVwjtagHlu0H5lqzpibm5iWCegaMBk3MQX2JyaUlqcn5ukl5yYnEqD0jG2MAMzAEAoO0cmA==) 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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.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}.history-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.history-modal{background:#fff;border-radius:16px;width:100%;max-width:360px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003}.history-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #E5E7EB}.history-modal-header h2{margin:0;font-size:1.1rem;font-weight:600;color:#1f2937}.history-close-btn{background:none;border:none;font-size:1.2rem;color:#6b7280;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s}.history-close-btn:hover{background:#f3f4f6}.history-modal-content{flex:1;overflow-y:auto;padding:12px}.history-empty{text-align:center;color:#9ca3af;padding:40px 20px;font-size:.95rem}.history-entry{background:#f9fafb;border:1px solid #E5E7EB;border-radius:12px;padding:16px;margin-bottom:12px;font-family:SF Mono,Monaco,Consolas,monospace}.history-entry:last-child{margin-bottom:0}.history-entry.clickable{cursor:pointer;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.history-entry.clickable:hover{background:#ebf8ff;border-color:#0f766e;transform:translateY(-2px);box-shadow:0 4px 12px #0f766e26}.history-entry.clickable:active{transform:translateY(0);background:#dbeafe}.history-expression{text-align:right;padding-right:20px}.history-line{font-size:1.1rem;color:#374151;line-height:1.5}.history-divider{text-align:right;padding-right:20px;color:#9ca3af;letter-spacing:-1px;margin:4px 0}.history-result{text-align:right;padding-right:20px;display:flex;align-items:baseline;justify-content:flex-end;gap:8px}.history-result-main{font-size:1.2rem;font-weight:600;color:#1f2937}.history-result-alt{font-size:.85rem;color:#6b7280}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.right-3{right:.75rem}.right-4{right:1rem}.top-1\/2{top:50%}.top-4{top:1rem}.z-50{z-index:50}.mx-4{margin-left:1rem;margin-right:1rem}.mb-1{margin-bottom:.25rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.mt-1{margin-top:.25rem}.mt-6{margin-top:1.5rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-14{height:3.5rem}.h-5{height:1.25rem}.h-8{height:2rem}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-14{width:3.5rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-full{width:100%}.max-w-md{max-width:28rem}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.bg-\[\#0F766E\]{--tw-bg-opacity: 1;background-color:rgb(15 118 110 / var(--tw-bg-opacity, 1))}.bg-\[\#F6F7F9\]{--tw-bg-opacity: 1;background-color:rgb(246 247 249 / var(--tw-bg-opacity, 1))}.bg-black\/50{background-color:#00000080}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-4{padding:1rem}.p-8{padding:2rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pr-12{padding-right:3rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-none{line-height:1}.text-\[\#0F766E\]{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity, 1))}.text-\[\#101828\]{--tw-text-opacity: 1;color:rgb(16 24 40 / var(--tw-text-opacity, 1))}.text-\[\#374151\]{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-\[\#667085\]{--tw-text-opacity: 1;color:rgb(102 112 133 / var(--tw-text-opacity, 1))}.text-\[\#9CA3AF\]{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}*{box-sizing:border-box}.app{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:var(--color-surface-canvas)}.tab-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.header{flex-shrink:0;background:var(--color-surface-card-top);border-bottom:1px solid var(--color-border-soft);padding:8px 12px;padding-top:max(8px,env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:8px}.logo{width:32px;height:32px;background:var(--gradient-voice-active);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:1rem;font-weight:500;color:var(--color-text-primary)}.logo-img{height:32px;width:auto;-o-object-fit:contain;object-fit:contain}.brand-text{display:flex;flex-direction:column}.brand-title{font-family:var(--font-sans);font-size:1rem;font-weight:500;color:var(--color-text-primary);line-height:1.1;letter-spacing:-.3px}.brand-subtitle{font-family:var(--font-sans);font-size:.55rem;color:var(--color-text-tertiary);letter-spacing:.1em;text-transform:uppercase}.user-name{padding:4px 12px;background:var(--gradient-card);box-shadow:var(--shadow-card);border-radius:var(--radius-full);font-family:var(--font-sans);font-size:.75rem;color:var(--color-text-secondary);font-weight:500}.offline-badge{padding:4px 8px;background:var(--color-semantic-warn-bg);color:var(--color-semantic-warn-text);border-radius:var(--radius-full);font-family:var(--font-sans);font-size:.7rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.website-btn{padding:6px 10px;background:var(--gradient-key-rest);box-shadow:var(--shadow-mini-key);border-radius:var(--radius-sm);color:var(--color-text-strong);font-family:var(--font-sans);font-size:.8rem;text-decoration:none;transition:box-shadow var(--transition-base),transform var(--transition-base)}.website-btn:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.main{flex:1;display:flex;flex-direction:column;padding:8px;gap:8px;overflow:hidden;max-height:calc(100vh - 50px);max-height:calc(100dvh - 50px)}.card{background:var(--gradient-card);border:1px solid var(--color-border-subtle, rgba(15, 20, 25, .04));border-radius:var(--radius-lg);padding:var(--spacing-card-padding, 14px);box-shadow:var(--shadow-card)}.left-card{flex-shrink:0}.right-card{flex:1;display:flex;flex-direction:column;min-height:0}.display-section{margin-bottom:8px}.display-row{display:flex;gap:8px;align-items:stretch}.display-box{flex:1;min-width:0;background:var(--gradient-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:12px 16px;display:flex;align-items:center;justify-content:center}.display-box.primary{flex:1;min-width:0}.display-box.secondary{flex:0 0 auto;min-width:90px}.display-box.equal{flex:1;min-width:0}.display-value{font-family:var(--font-mono);font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;width:100%;display:block;text-align:center;letter-spacing:-.8px}.display-value.recording{color:var(--color-brand-amber);animation:pulse 1.5s infinite}.display-value.processing{color:var(--color-text-secondary);animation:pulse 1s infinite}.display-value-secondary{font-family:var(--font-mono);font-size:1.4rem;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.divider{height:1px;background:#0f14190f;margin:8px 0}.expression-wrapper{position:relative;margin-bottom:8px}.expression-input{width:100%;background:var(--color-surface-inset);box-shadow:var(--shadow-inset);color:var(--color-text-strong);border-radius:var(--radius-md);padding:16px 50px 16px 16px;font-family:var(--font-mono);min-height:60px;display:flex;align-items:center;box-sizing:border-box}.expression-text{display:block;width:100%;overflow:hidden;white-space:nowrap;font-weight:400}.expression-text.placeholder{color:var(--color-text-tertiary)}.expression-text--input{border:none;background:transparent;outline:none;padding:0;color:inherit;font:inherit}.expression-text--input::-moz-placeholder{color:var(--color-text-tertiary);opacity:1}.expression-text--input::placeholder{color:var(--color-text-tertiary);opacity:1}.history-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:none;border-radius:var(--radius-full);background:var(--gradient-voice-active);box-shadow:var(--shadow-mini-key);color:var(--color-text-primary);font-family:var(--font-sans);font-weight:500;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-base),box-shadow var(--transition-fast)}.history-btn:active{transform:translateY(-50%) translateY(.5px);box-shadow:var(--shadow-key-pressed)}.voice-btn{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;background:var(--gradient-voice-active);box-shadow:var(--shadow-voice-active);color:var(--color-text-primary);border:none;border-radius:var(--radius-full);font-family:var(--font-sans);font-size:1rem;font-weight:500;cursor:pointer;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:none;transition:background var(--transition-base),box-shadow var(--transition-base),color var(--transition-fast)}.voice-btn:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.voice-btn:disabled{opacity:.5;cursor:not-allowed}.voice-btn.listening{background:var(--gradient-voice-active);box-shadow:var(--shadow-voice-active);color:var(--color-text-primary)}.voice-btn.processing{background:var(--gradient-key-dark);box-shadow:var(--shadow-key-dark);color:var(--color-text-on-charcoal, var(--color-text-on-charcoal));animation:pulse-thinking 1.2s ease-in-out infinite}@keyframes pulse-thinking{0%,to{opacity:1}50%{opacity:.7}}.voice-btn.locked{background:var(--gradient-voice-active);box-shadow:var(--shadow-voice-active);color:var(--color-text-primary);opacity:.85}.voice-icon{font-size:1.2rem;display:flex;align-items:center;justify-content:center}.voice-btn.listening .voice-icon{color:var(--color-text-primary)}.voice-text{color:inherit}.voice-feedback{text-align:center;font-size:.85rem;font-weight:500;margin-bottom:8px;min-height:24px;color:var(--color-text-secondary)}.voice-feedback.recording{color:var(--color-brand-amber);animation:fade-in-out 1s ease-in-out infinite}.voice-feedback.processing{color:var(--color-text-strong)}@keyframes fade-in-out{0%,to{opacity:1}50%{opacity:.5}}.memory{margin-top:8px;padding-top:8px;border-top:1px solid rgba(15,20,25,.06);font-family:var(--font-mono);color:var(--color-text-secondary);font-size:.85rem;line-height:1.3}.memory-line{color:var(--color-text-tertiary);margin:2px 0}.fraction-label{color:var(--color-text-tertiary);font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;text-align:center;margin-bottom:6px}.fraction-container{background:var(--color-surface-canvas-warm);box-shadow:var(--shadow-inset);border-radius:var(--radius-md);padding:6px;margin-bottom:8px}.fraction-pad{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.frac-btn{background:var(--gradient-key-rest);box-shadow:var(--shadow-key);color:var(--color-text-strong);border:none;border-radius:var(--radius-sm);padding:7px 3px;font-family:var(--font-mono);font-size:.8rem;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.frac-btn:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.frac-btn.feet{background:var(--gradient-key-rest);color:var(--color-brand-amber-dark);font-weight:500}.keypad{flex:1;display:flex;flex-direction:column;gap:var(--spacing-key-gap, 4px)}.keypad-row{flex:1;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-key-gap, 4px)}.keypad-row.last-row{grid-template-columns:1fr 1fr 2fr}.key{background:var(--gradient-key-rest);box-shadow:var(--shadow-key);color:var(--color-text-strong);border:none;border-radius:var(--radius-key);font-family:var(--font-mono);font-size:1.1rem;padding:4px 0;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;transition:background var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.key:active{background:var(--gradient-key-pressed);box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.key.operator{background:var(--gradient-key-rest);color:var(--color-text-secondary);font-weight:500}.key.danger{background:var(--gradient-key-rest);color:var(--color-semantic-danger-text, #B91C1C);font-weight:500}.key.equals{background:var(--gradient-key-dark);box-shadow:var(--shadow-key-dark);color:var(--color-text-on-charcoal, var(--color-text-on-charcoal));font-weight:500}.key.equals:active{background:var(--gradient-key-dark);box-shadow:inset 0 2px 4px #0006;transform:translateY(.5px)}.conv-main{flex:1;min-height:0;display:flex;flex-direction:column;padding:6px;gap:6px;overflow:hidden}.conv-toolbar{display:flex;align-items:center;justify-content:space-between;padding:4px 6px;flex-shrink:0}.conv-toolbar__count{font-family:var(--font-sans);font-size:.7rem;letter-spacing:.5px;color:var(--color-text-tertiary);text-transform:uppercase}.conv-toolbar__actions{display:flex;gap:6px}.conv-action--danger{color:var(--color-semantic-danger-text)}.conv-history{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px 2px 8px;scroll-behavior:smooth}.conv-empty{margin:auto;text-align:center;padding:24px 16px;max-width:320px;color:var(--color-text-secondary);font-family:var(--font-sans)}.conv-empty__title{font-size:1.1rem;font-weight:500;color:var(--color-text-primary);margin-bottom:6px;letter-spacing:-.3px}.conv-empty__hint{font-size:.85rem;line-height:1.5}.conv-empty__hint code{font-family:var(--font-mono);background:var(--color-surface-canvas-warm);padding:1px 6px;border-radius:var(--radius-xs);font-size:.85em}.conv-empty__examples{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}.conv-empty__example{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:var(--color-surface-canvas-warm);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.82rem;color:var(--color-text-secondary);cursor:pointer;transition:background .12s ease,border-color .12s ease,transform 60ms ease}.conv-empty__example:hover{background:var(--color-surface-raised);border-color:var(--color-border-strong)}.conv-empty__example:active{transform:translateY(1px)}.conv-empty__example-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-tertiary)}.conv-empty__example code{font-family:var(--font-mono);font-size:.82rem;color:var(--color-text-primary)}.conv-card{background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:12px 14px;font-family:var(--font-sans)}.conv-card--latest{box-shadow:var(--shadow-card),inset 3px 0 0 var(--color-brand-amber)}.conv-card--pending{opacity:.75;animation:pulse 1.6s ease-in-out infinite}.conv-card__meta{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}.conv-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-full);font-size:.7rem;font-weight:500;letter-spacing:.3px;text-transform:lowercase;line-height:1.4}.conv-chip--voice{background:var(--color-semantic-warn-bg);color:var(--color-semantic-warn-text)}.conv-chip--manual{background:var(--color-semantic-count-bg);color:var(--color-semantic-count-text)}.conv-chip--dim{font-weight:500;text-transform:uppercase;font-size:.65rem;letter-spacing:.6px}.conv-chip--area{background:var(--color-semantic-area-bg);color:var(--color-semantic-area-text)}.conv-chip--length{background:var(--color-semantic-length-bg);color:var(--color-semantic-length-text)}.conv-chip--count{background:var(--color-semantic-count-bg);color:var(--color-semantic-count-text)}.conv-chip--volume{background:var(--color-semantic-warn-bg);color:var(--color-semantic-warn-text)}.stairs-panel{flex:1;display:flex;flex-direction:column;gap:12px;padding:12px;overflow-y:auto;font-family:var(--font-sans)}.stairs-panel__inputs{background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:12px;display:flex;flex-direction:column;gap:10px}.stairs-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.stairs-row__label{display:flex;flex-direction:column;font-size:.85rem;color:var(--color-text-strong);flex:1}.stairs-row__hint{font-size:.7rem;color:var(--color-text-tertiary);font-style:normal;margin-top:2px}.stairs-input{flex-shrink:0;width:90px;background:var(--color-surface-inset);box-shadow:var(--shadow-inset);border:none;border-radius:var(--radius-md);padding:8px 10px;font-family:var(--font-mono);font-size:.95rem;color:var(--color-text-primary);text-align:right}.stairs-input:focus{outline:none;box-shadow:var(--shadow-inset),var(--shadow-focus-ring)}.stairs-panel__output,.stairs-panel__compliance{background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:12px}.stairs-panel__section-title{font-size:.75rem;font-weight:500;letter-spacing:.8px;text-transform:uppercase;color:var(--color-text-tertiary);margin:0 0 8px;display:flex;align-items:center;justify-content:space-between}.stairs-output{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.stairs-output li{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--color-border-faint);font-size:.85rem;color:var(--color-text-secondary)}.stairs-output li strong{font-family:var(--font-mono);font-weight:500;color:var(--color-text-primary);font-size:.95rem}.stairs-compliance-badge{font-size:.7rem;letter-spacing:.5px;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-full);font-weight:500}.stairs-compliance-badge--ok{background:var(--color-semantic-area-bg);color:var(--color-semantic-area-text)}.stairs-compliance-badge--error{background:var(--color-semantic-danger-bg);color:var(--color-semantic-danger-text)}.stairs-compliance{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.stairs-compliance__item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--radius-md);background:var(--color-surface-canvas-warm)}.stairs-compliance__item--ok{background:var(--color-semantic-area-bg)}.stairs-compliance__item--warn{background:var(--color-semantic-warn-bg)}.stairs-compliance__item--error{background:var(--color-semantic-danger-bg)}.stairs-compliance__icon{flex-shrink:0;font-family:var(--font-sans);font-size:1rem;font-weight:500;line-height:1;width:20px;text-align:center}.stairs-compliance__item--ok .stairs-compliance__icon{color:var(--color-semantic-area-text)}.stairs-compliance__item--warn .stairs-compliance__icon{color:var(--color-semantic-warn-text)}.stairs-compliance__item--error .stairs-compliance__icon{color:var(--color-semantic-danger-text)}.stairs-compliance__text{flex:1;display:flex;flex-direction:column;gap:2px}.stairs-compliance__label{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:.85rem;color:var(--color-text-primary)}.stairs-compliance__label strong{font-weight:500}.stairs-compliance__value{font-family:var(--font-mono);font-size:.8rem;color:var(--color-text-secondary)}.stairs-compliance__rule{font-size:.75rem;color:var(--color-text-secondary);line-height:1.3}.privacy-dashboard-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f14198c;display:flex;align-items:center;justify-content:center;z-index:1100;padding:16px;overflow-y:auto}.privacy-dashboard{background:var(--gradient-card);border-radius:var(--radius-xl, 14px);box-shadow:var(--shadow-card),0 20px 60px #0f14194d;width:100%;max-width:480px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.privacy-dashboard__header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border-soft)}.privacy-dashboard__title{font-family:var(--font-sans);font-size:1.25rem;font-weight:500;color:var(--color-text-primary);margin:0;letter-spacing:-.3px}.privacy-dashboard__close{background:var(--gradient-key-rest);box-shadow:var(--shadow-mini-key);color:var(--color-text-secondary);border:none;border-radius:var(--radius-sm);padding:6px;cursor:pointer;display:flex;transition:box-shadow var(--transition-base),transform var(--transition-base)}.privacy-dashboard__close:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.privacy-dashboard__body{padding:16px 20px 20px;overflow-y:auto;font-family:var(--font-sans)}.privacy-section{margin-bottom:20px}.privacy-section:last-of-type{margin-bottom:12px}.privacy-section__title{font-size:.75rem;font-weight:500;letter-spacing:.8px;text-transform:uppercase;color:var(--color-text-tertiary);margin:0 0 8px}.privacy-section__sub{font-size:.85rem;color:var(--color-text-secondary);line-height:1.4;margin:0 0 12px}.privacy-consent-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--color-border-faint)}.privacy-consent-row:first-of-type{border-top:none}.privacy-consent-row__text{flex:1;display:flex;flex-direction:column;gap:2px}.privacy-consent-row__label{font-size:.95rem;font-weight:500;color:var(--color-text-primary)}.privacy-consent-row__desc{font-size:.75rem;color:var(--color-text-tertiary);line-height:1.3}.privacy-toggle{flex-shrink:0;width:42px;height:24px;border:none;border-radius:var(--radius-full);background:var(--color-surface-inset);box-shadow:var(--shadow-inset);cursor:pointer;padding:0;position:relative;transition:background var(--transition-base),box-shadow var(--transition-base)}.privacy-toggle__thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--color-surface-card-top);border-radius:var(--radius-full);box-shadow:var(--shadow-mini-key);transition:left var(--transition-base),background var(--transition-base)}.privacy-toggle--on{background:var(--gradient-voice-active);box-shadow:var(--shadow-voice-active)}.privacy-toggle--on .privacy-toggle__thumb{left:21px;background:var(--color-text-primary)}.privacy-code{font-family:var(--font-mono);font-size:.8em;background:var(--color-surface-canvas-warm);padding:1px 6px;border-radius:var(--radius-xs);color:var(--color-text-strong)}.privacy-counts{list-style:none;padding:0;margin:0;border-radius:var(--radius-md);background:var(--color-surface-inset);box-shadow:var(--shadow-inset);overflow:hidden}.privacy-counts li{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;font-size:.9rem;color:var(--color-text-strong);border-top:1px solid var(--color-border-faint)}.privacy-counts li:first-child{border-top:none}.privacy-counts li strong{font-family:var(--font-mono);font-weight:500;color:var(--color-text-primary)}.privacy-counts__loading{font-size:.85rem;color:var(--color-text-tertiary);font-style:italic;margin:0}.privacy-delete-btn{width:100%;background:var(--gradient-key-rest);box-shadow:var(--shadow-key);color:var(--color-semantic-danger-text);border:none;border-radius:var(--radius-md);padding:12px 16px;font-family:var(--font-sans);font-size:.95rem;font-weight:500;cursor:pointer;transition:box-shadow var(--transition-base),transform var(--transition-base)}.privacy-delete-btn:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.privacy-delete-btn:disabled{opacity:.5;cursor:not-allowed}.privacy-deletion-summary{margin:10px 0 0;font-size:.85rem;color:var(--color-text-secondary);padding:8px 12px;background:var(--color-semantic-area-bg);color:var(--color-semantic-area-text);border-radius:var(--radius-sm)}.privacy-dashboard__footer{margin-top:16px;padding-top:12px;border-top:1px solid var(--color-border-soft);font-size:.75rem;color:var(--color-text-tertiary);text-align:center}.privacy-dashboard__footer a{color:var(--color-brand-amber-dark);text-decoration:none}.privacy-dashboard__footer a:hover{text-decoration:underline}.conv-chip--pending{background:var(--color-surface-canvas-warm);color:var(--color-text-secondary);font-style:italic}.conv-card__transcription{font-size:.8rem;color:var(--color-text-secondary);font-style:italic;margin-bottom:6px;line-height:1.35}.conv-card__muted{color:var(--color-text-tertiary);font-style:normal;margin-right:4px}.conv-card__expression{font-family:var(--font-mono);font-size:.95rem;color:var(--color-text-strong);margin-bottom:6px;letter-spacing:-.2px}.conv-card__result{font-family:var(--font-mono);font-size:1.7rem;font-weight:500;color:var(--color-text-primary);letter-spacing:-.8px;line-height:1.1;margin-bottom:2px;word-break:break-all}.conv-card__result-secondary{font-family:var(--font-mono);font-size:.85rem;color:var(--color-text-tertiary);margin-bottom:8px}.conv-card__actions{display:flex;gap:6px;margin-top:8px}.conv-action{background:var(--gradient-key-rest);box-shadow:var(--shadow-mini-key);color:var(--color-text-strong);border:none;border-radius:var(--radius-sm);padding:5px 12px;font-family:var(--font-sans);font-size:.75rem;font-weight:500;cursor:pointer;transition:box-shadow var(--transition-base),transform var(--transition-base)}.conv-action:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.conv-action--primary{background:var(--gradient-key-dark);box-shadow:var(--shadow-key-dark);color:var(--color-text-on-charcoal)}.conv-action--active{box-shadow:var(--shadow-key-pressed);color:var(--color-brand-amber-dark)}.conv-card__alts{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--color-border-faint)}.conv-card__alts-hint{font-family:var(--font-sans);font-size:.72rem;color:var(--color-text-tertiary);letter-spacing:.3px}.conv-action--alt{font-size:.72rem;letter-spacing:.2px}.conv-card--editing{box-shadow:var(--shadow-card),inset 3px 0 0 var(--color-brand-amber-dark)}.conv-card__editor{width:100%;background:var(--color-surface-inset);box-shadow:var(--shadow-inset);border:none;border-radius:var(--radius-md);padding:10px 12px;font-family:var(--font-mono);font-size:1rem;color:var(--color-text-strong);letter-spacing:-.2px;margin-bottom:6px}.conv-card__editor:focus{outline:none;box-shadow:var(--shadow-inset),var(--shadow-focus-ring)}.conv-card__error{font-family:var(--font-sans);font-size:.75rem;color:var(--color-semantic-danger-text);margin-bottom:6px}.conv-composer{flex-shrink:0;display:flex;flex-direction:column;gap:8px;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--spacing-card-padding, 14px)}@media (min-width: 768px){.conv-main{max-width:720px;margin:0 auto;padding:24px 20px;gap:16px;height:auto;max-height:none}.conv-history{max-height:60vh;padding:4px 4px 12px}.conv-card{padding:16px 18px}.conv-card__result{font-size:2.2rem}.conv-composer{padding:var(--spacing-card-padding-lg, 18px)}}@media (max-height: 700px){.conv-history{gap:6px}.conv-card{padding:8px 10px}.conv-card__result{font-size:1.4rem}.conv-card__meta{margin-bottom:4px}.conv-card__expression{margin-bottom:4px;font-size:.85rem}.conv-composer{padding:8px;gap:6px}}@media (min-width: 768px){.header{padding:12px 24px;padding-top:max(12px,env(safe-area-inset-top))}.main{flex-direction:row;justify-content:center;align-items:flex-start;max-width:1000px;margin:0 auto;padding:32px 24px;gap:24px;height:auto;max-height:none;overflow:visible}.left-card{flex:0 0 380px;min-height:400px}.right-card{flex:0 0 320px;min-height:480px}.card{padding:var(--spacing-card-padding-lg, 18px);border-radius:var(--radius-xl, 14px);box-shadow:var(--shadow-card),0 4px 24px #0f14190f}.display-section{margin-bottom:16px}.display-row{gap:12px}.display-box{padding:16px 20px;border-radius:var(--radius-md)}.display-box.secondary{min-width:120px}.display-value-secondary{font-size:1.6rem}.divider{margin:16px 0}.expression-input{padding:16px 18px;font-size:1.15rem;margin-bottom:16px;border-radius:var(--radius-lg)}.voice-btn{padding:16px 28px;font-size:1.1rem;margin-top:8px}.voice-icon{font-size:1.4rem}.memory{margin-top:16px;padding-top:12px;font-size:1rem}.fraction-label{font-size:.7rem;margin-bottom:12px}.fraction-pad{gap:10px;margin-bottom:16px}.frac-btn{padding:14px 8px;font-size:1rem;border-radius:var(--radius-key)}.frac-btn:hover,.key:hover{background:radial-gradient(ellipse at center top,#fff,#f5f3eb 60%,#ebe8da)}.key.equals:hover{background:radial-gradient(ellipse at center top,#39425A 0%,var(--color-charcoal-bottom) 60%,#0F1419 100%)}.keypad,.keypad-row{gap:10px}.key{padding:20px 0;font-size:1.5rem;border-radius:var(--radius-lg)}}@media (max-height: 700px){.header{padding:6px 10px;padding-top:max(6px,env(safe-area-inset-top))}.logo{width:28px;height:28px}.main{padding:6px;gap:6px}.card{padding:8px;border-radius:var(--radius-key)}.display-section{min-height:50px}.divider{margin:6px 0}.expression-input{padding:8px 10px;font-size:.85rem;margin-bottom:6px}.voice-btn{padding:8px 12px;font-size:.8rem}.voice-icon{font-size:1rem}.memory{font-size:.75rem;margin-top:6px;padding-top:6px}.fraction-pad{gap:var(--spacing-key-gap-mobile, 4px);margin-bottom:6px}.frac-btn{padding:6px 2px;font-size:.75rem;border-radius:var(--radius-sm)}.keypad,.keypad-row{gap:var(--spacing-key-gap-mobile, 4px)}.key{font-size:1.1rem;border-radius:var(--radius-md)}}.popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f14198c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.popup-content{background:var(--gradient-card);border-radius:var(--radius-xl, 14px);box-shadow:var(--shadow-card),0 20px 60px #0f14194d;width:100%;max-width:380px;padding:32px 24px;text-align:center;position:relative}.popup-close{position:absolute;top:12px;right:12px;background:none;border:none;font-size:24px;color:var(--color-text-tertiary);cursor:pointer;line-height:1;transition:color var(--transition-fast)}.popup-close:hover{color:var(--color-text-secondary)}.popup-icon{font-size:48px;margin-bottom:16px}.popup-title{font-family:var(--font-sans);font-size:1.5rem;font-weight:500;color:var(--color-text-primary);margin-bottom:8px;letter-spacing:-.5px}.popup-description{font-family:var(--font-sans);color:var(--color-text-secondary);margin-bottom:20px}.popup-features{text-align:left;margin-bottom:24px}.popup-feature{color:var(--color-text-strong);font-family:var(--font-sans);padding:8px 0;font-size:.9375rem}.popup-pricing{margin-bottom:24px}.popup-trial{margin-bottom:8px}.popup-trial-badge{display:inline-block;background:var(--gradient-voice-active);box-shadow:var(--shadow-mini-key);color:var(--color-text-primary);font-family:var(--font-sans);font-weight:500;padding:6px 16px;border-radius:var(--radius-full);font-size:.875rem}.popup-trial-text{color:var(--color-text-secondary);font-family:var(--font-sans);font-size:.875rem;margin-top:6px}.popup-price{color:var(--color-text-primary);font-family:var(--font-mono);font-weight:500}.popup-btn{width:100%;padding:14px 24px;border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:1rem;font-weight:500;cursor:pointer;margin-bottom:12px;transition:box-shadow var(--transition-base),transform var(--transition-base)}.popup-btn-primary{background:var(--gradient-voice-active);box-shadow:var(--shadow-voice-active);color:var(--color-text-primary)}.popup-btn-secondary{background:var(--gradient-key-rest);box-shadow:var(--shadow-key);color:var(--color-text-strong)}.popup-btn:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.popup-note{font-size:.75rem;color:var(--color-text-tertiary);font-family:var(--font-sans)}.header-actions{display:flex;align-items:center;gap:8px}.sign-out-btn{background:var(--gradient-key-rest);box-shadow:var(--shadow-mini-key);color:var(--color-text-secondary);border:none;border-radius:var(--radius-sm);padding:6px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:box-shadow var(--transition-base),color var(--transition-fast),transform var(--transition-base)}.sign-out-btn:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px);color:var(--color-semantic-danger-text)}.sign-in-btn{background:var(--gradient-voice-active);box-shadow:var(--shadow-mini-key);color:var(--color-text-primary);border:none;border-radius:var(--radius-sm);padding:6px 12px;font-family:var(--font-sans);font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:box-shadow var(--transition-base),transform var(--transition-base)}.sign-in-btn:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.app-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-surface-canvas);color:var(--color-text-secondary);font-family:var(--font-sans);gap:16px}.loading-spinner{width:48px;height:48px;border:4px solid rgba(245,166,35,.2);border-top-color:var(--color-brand-amber);border-radius:50%;animation:spin .8s linear infinite}.app-loading p{font-size:1rem;color:var(--color-text-tertiary)}.consent-modal{max-width:400px}.consent-details{text-align:left;margin-bottom:24px;padding:16px;background:var(--color-surface-inset);box-shadow:var(--shadow-inset);border-radius:var(--radius-lg)}.consent-text{color:var(--color-text-strong);font-family:var(--font-sans);font-size:.9rem;line-height:1.5;margin-bottom:12px}.consent-text:last-child{margin-bottom:0}.consent-privacy{display:flex;align-items:flex-start;gap:8px;color:var(--color-semantic-area-text);font-weight:500}.consent-list{margin:8px 0 16px;padding-left:20px;color:var(--color-text-strong);font-family:var(--font-sans);font-size:.9rem;line-height:1.6}.consent-list li{margin-bottom:4px}.consent-checkbox-label{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-soft);cursor:pointer}.consent-checkbox-label input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:var(--color-brand-amber);cursor:pointer;flex-shrink:0}.consent-checkbox-text{color:var(--color-text-secondary);font-family:var(--font-sans);font-size:.85rem;line-height:1.4}.popup-error{background:var(--color-semantic-danger-bg);color:var(--color-semantic-danger-text);padding:12px 16px;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.875rem;margin-bottom:16px}.content-container{flex:1;display:flex;flex-direction:column;background:var(--color-surface-card-top);border-radius:16px;margin:12px 12px 8px;box-shadow:0 4px 12px #0000001f;border:1px solid #CBD5E1;overflow:hidden}.unit-converter{flex:1;display:flex;flex-direction:column;background:var(--color-surface-canvas);overflow:hidden}.unit-converter-display{flex:1;display:flex;flex-direction:column;justify-content:center;padding:16px;gap:8px}.unit-converter-row{display:flex;align-items:center;gap:12px}.unit-converter-value{flex:1;background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:10px;padding:14px 16px;font-size:1.5rem;font-weight:700;color:var(--color-text-primary);text-align:right}.unit-converter-result{flex:1;background:var(--gradient-key-dark);border-radius:10px;padding:14px 16px;font-size:1.5rem;font-weight:700;color:var(--color-text-on-charcoal);text-align:right}.unit-converter-select{background:var(--color-surface-canvas-warm);border:1px solid var(--color-border-soft);border-radius:10px;padding:12px 10px;font-size:.85rem;font-weight:600;color:var(--color-text-primary);cursor:pointer;min-width:100px}.unit-converter-select:focus{outline:none;border-color:var(--color-brand-amber)}.unit-converter-swap{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;padding:8px;margin:4px auto;transition:color .15s}.unit-converter-swap:hover{color:var(--color-brand-amber)}.unit-converter-presets{display:flex;justify-content:center;gap:10px;padding:8px 16px;flex-shrink:0}.unit-converter-preset{background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:20px;padding:10px 16px;font-size:.85rem;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.unit-converter-preset:hover,.unit-converter-preset:active{background:var(--color-brand-amber);border-color:var(--color-brand-amber);color:var(--color-text-primary)}.triangle-container-v2{flex:1;display:flex;flex-direction:column;padding:12px;gap:8px;overflow:hidden;background:var(--color-surface-canvas)}.triangle-presets-v2{display:flex;justify-content:center;gap:8px;flex-shrink:0}.triangle-preset-btn-v2{background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:20px;padding:8px 16px;font-size:.85rem;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.triangle-preset-btn-v2:hover,.triangle-preset-btn-v2:active{background:var(--color-brand-amber);border-color:var(--color-brand-amber);color:var(--color-text-primary)}.triangle-visual-v2{flex:1;position:relative;display:flex;align-items:center;justify-content:center;min-height:200px}.triangle-svg-v2{width:100%;max-width:300px;height:auto;color:var(--color-charcoal-bottom)}.triangle-input-v2{position:absolute;background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:8px;padding:8px 12px;font-size:1.1rem;font-weight:700;color:var(--color-text-primary);cursor:pointer;transition:all .15s;min-width:50px;text-align:center}.triangle-input-v2.active{border-color:var(--color-brand-amber);background:var(--color-semantic-warn-bg);box-shadow:0 0 0 3px #fdb9134d}.triangle-input-a{bottom:5%;left:50%;transform:translate(-50%)}.triangle-input-b{right:5%;top:50%;transform:translateY(-50%)}.triangle-input-c{left:25%;top:35%;transform:translate(-50%,-50%)}.triangle-keypad-v2{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.triangle-keypad-row{display:flex;gap:4px}.triangle-key-v2{flex:1;background:var(--color-surface-canvas-warm);border:1px solid var(--color-border-soft);border-radius:8px;padding:12px 8px;font-size:1rem;font-weight:500;color:var(--color-text-primary);cursor:pointer;transition:all .1s}.triangle-key-v2:active{transform:scale(.96);background:var(--color-border-soft)}.triangle-key-v2.action{background:#e6ecf2;color:#dc2626}.triangle-key-v2.primary{background:var(--gradient-key-dark);border-color:var(--color-charcoal-bottom);color:var(--color-text-on-charcoal);font-weight:600}.triangle-key-v2.wide{flex:2}.easy-square{flex:1;display:flex;flex-direction:column;background:var(--color-surface-canvas);overflow:hidden}.easy-square-fractions{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px 16px;flex-shrink:0}.easy-square-triangle{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:20px;min-height:200px;margin:8px 12px;border-radius:12px;background-color:#fafcfe;background-image:linear-gradient(rgba(180,200,220,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(180,200,220,.25) 1px,transparent 1px);background-size:20px 20px;border:1px solid #E2E8F0;box-shadow:inset 0 1px 3px #0000000a}.easy-square-svg{width:100%;max-width:280px;height:auto}.easy-square-input{position:absolute;background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:6px;padding:6px 10px;font-size:1.1rem;font-weight:700;color:var(--color-text-primary);cursor:pointer;transition:all .15s;min-width:50px;text-align:center;box-shadow:0 1px 3px #0000001a;font-family:SF Mono,Cascadia Code,Consolas,monospace}.easy-square-input:hover{border-color:#a0aec0}.easy-square-input.active{border-color:var(--color-brand-amber);background:var(--color-semantic-warn-bg);box-shadow:0 0 0 3px #fdb9134d}.easy-square-input.computed{background:#f0fff4;border-color:#9ae6b4;color:#276749}.easy-square-input.computed.active{border-color:var(--color-brand-amber);background:var(--color-semantic-warn-bg);color:var(--color-text-primary)}.easy-square-input-a{bottom:4%;left:50%;transform:translate(-50%)}.easy-square-input-b{right:2%;top:42%;transform:translateY(-50%)}.easy-square-input-c{left:28%;top:32%;transform:translate(-50%,-50%)}.easy-square-presets{display:flex;justify-content:center;gap:10px;padding:8px 16px;flex-shrink:0}.easy-square-preset{background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:20px;padding:10px 18px;font-size:.9rem;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.easy-square-preset:hover,.easy-square-preset:active{background:var(--color-brand-amber);border-color:var(--color-brand-amber);color:var(--color-text-primary)}.easy-square-keypad{display:flex;flex-direction:column;gap:6px;padding:6px 16px;padding-bottom:max(6px,env(safe-area-inset-bottom));flex-shrink:0}.easy-square-row{display:flex;gap:6px}.easy-square-key{flex:1;background:var(--color-surface-canvas-warm);border:1px solid var(--color-border-soft);border-radius:10px;padding:12px 8px;font-size:1.3rem;font-weight:500;color:var(--color-text-primary);cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.easy-square-key:active{transform:scale(.96)}.easy-square-key.action{background:#ffe5e5;border-color:#fcc;color:#c33;font-weight:600}.easy-square-key.primary{background:var(--gradient-key-dark);border-color:var(--color-charcoal-bottom);color:var(--color-text-on-charcoal);font-weight:700}.easy-square-key.primary:active{background:#0a2a28}.hamburger-btn{background:transparent;border:none;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-primary);border-radius:8px;transition:background .2s}.hamburger-btn:hover{background:#0000000d}.hamburger-btn:active{background:#0000001a}.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:998;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.menu-drawer{position:fixed;top:0;right:-300px;width:300px;max-width:85vw;height:100%;background:var(--color-surface-card-top);z-index:999;display:flex;flex-direction:column;box-shadow:-4px 0 20px #00000026;transition:right .3s ease-out}.menu-drawer.open{right:0}.menu-header{display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:max(16px,env(safe-area-inset-top));background:var(--gradient-key-dark);flex-shrink:0}.menu-logo{height:36px;width:auto}.menu-close-btn{background:transparent;border:none;padding:8px;cursor:pointer;color:var(--color-text-on-charcoal);border-radius:8px;display:flex;align-items:center;justify-content:center}.menu-close-btn:hover{background:#ffffff1a}.menu-user{display:flex;align-items:center;gap:12px;padding:16px;background:var(--color-surface-canvas);border-bottom:1px solid var(--color-border-soft)}.menu-user-avatar{width:40px;height:40px;background:var(--gradient-key-dark);color:var(--color-text-on-charcoal);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem}.menu-user-name{font-size:.95rem;color:var(--color-text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-nav{flex:1;overflow-y:auto;padding:8px 0}.menu-item{display:flex;align-items:center;gap:14px;width:100%;padding:14px 20px;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--color-text-primary);font-size:.95rem;transition:background .15s}.menu-item:hover{background:var(--color-surface-canvas)}.menu-item:active{background:var(--color-surface-canvas-warm)}.menu-item svg{color:#5b6b7d;flex-shrink:0}.menu-item-primary{background:var(--gradient-key-dark);color:var(--color-surface-card-top);border-radius:8px;margin:0 12px;width:calc(100% - 24px)}.menu-item-primary:hover{background:#0a2927}.menu-item-primary svg{color:var(--color-surface-card-top)}.menu-item-signout{color:var(--color-semantic-danger-text)}.menu-item-signout:hover{background:#ffebe9}.menu-item-signout svg{color:var(--color-semantic-danger-text)}.menu-item-danger{color:var(--color-semantic-danger-text)}.menu-item-danger:hover{background:#fff5f5}.menu-item-danger svg{color:var(--color-semantic-danger-text)}.menu-divider{height:1px;background:var(--color-border-soft);margin:8px 16px}.menu-footer{padding:16px;border-top:1px solid var(--color-border-soft);text-align:center;flex-shrink:0}.menu-version{display:block;font-size:.8rem;color:#5b6b7d;margin-bottom:4px}.menu-copyright{display:block;font-size:.75rem;color:#8a9aad}.legal-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1100;padding:16px}.legal-modal{background:var(--color-surface-card-top);border-radius:12px;width:100%;max-width:600px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000004d}.legal-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border-soft);flex-shrink:0}.legal-modal-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.legal-modal-close{width:36px;height:36px;border:none;background:#f0f2f5;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:background .2s}.legal-modal-close:hover{background:var(--color-border-soft)}.legal-modal-content{flex:1;overflow-y:auto;padding:20px}.legal-modal-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9rem;line-height:1.6;color:var(--color-text-primary);white-space:pre-wrap;word-wrap:break-word;margin:0}.legal-modal-text h1,.legal-modal-text h2,.legal-modal-text h3{margin-top:1.5em;margin-bottom:.5em}.legal-modal-footer{padding:16px 20px;border-top:1px solid var(--color-border-soft);flex-shrink:0}.legal-modal-btn{width:100%;padding:12px 20px;font-size:1rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;background:var(--gradient-key-dark);color:var(--color-surface-card-top);transition:background .2s}.legal-modal-btn:hover{background:#0a2927}@media (max-width: 480px){.legal-modal{max-width:100%;max-height:95vh;border-radius:16px 16px 0 0}.legal-modal-overlay{align-items:flex-end;padding:0}}.legal-choice-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1150;padding:20px}.legal-choice-modal{background:var(--color-surface-card-top);border-radius:16px;width:100%;max-width:320px;padding:24px;box-shadow:0 8px 32px #0000004d;text-align:center}.legal-choice-title{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.legal-choice-text{font-size:.9rem;color:var(--color-text-secondary);margin:0 0 20px}.legal-choice-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.legal-choice-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:2px solid transparent}.legal-choice-btn-app{background:var(--gradient-key-dark);color:var(--color-surface-card-top);border-color:var(--color-charcoal-bottom)}.legal-choice-btn-app:hover{background:#0a2927}.legal-choice-btn-web{background:var(--color-surface-card-top);color:var(--color-charcoal-bottom);border-color:var(--color-border-soft)}.legal-choice-btn-web:hover{background:var(--color-surface-canvas);border-color:var(--color-charcoal-bottom)}.legal-choice-cancel{background:transparent;border:none;color:var(--color-text-secondary);font-size:.9rem;cursor:pointer;padding:8px 16px}.legal-choice-cancel:hover{color:var(--color-text-primary)}.delete-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1200;padding:20px}.delete-modal{background:var(--color-surface-card-top);border-radius:12px;width:100%;max-width:400px;padding:24px;box-shadow:0 8px 32px #0000004d;text-align:center}.delete-modal-icon{margin-bottom:16px}.delete-modal-title{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0 0 12px}.delete-modal-text{font-size:.9rem;color:var(--color-text-secondary);margin:0 0 12px;line-height:1.4}.delete-modal-list{text-align:left;margin:0 0 12px;padding-left:24px;font-size:.85rem;color:var(--color-text-secondary)}.delete-modal-list li{margin-bottom:4px}.delete-modal-warning{font-size:.85rem;font-weight:600;color:var(--color-semantic-danger-text);margin:0 0 16px}.delete-modal-error{background:#ffebe9;color:var(--color-semantic-danger-text);padding:10px 12px;border-radius:6px;font-size:.85rem;margin-bottom:16px}.delete-modal-actions{display:flex;gap:12px}.delete-modal-btn{flex:1;padding:12px 16px;font-size:.95rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:background .2s,opacity .2s}.delete-modal-btn:disabled{opacity:.6;cursor:not-allowed}.delete-modal-btn-cancel{background:var(--color-border-soft);color:var(--color-text-primary)}.delete-modal-btn-cancel:hover:not(:disabled){background:#d8dadf}.delete-modal-btn-delete{background:var(--color-semantic-danger-text);color:var(--color-surface-card-top)}.delete-modal-btn-delete:hover:not(:disabled){background:#c82333}.toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);padding:12px 20px;border-radius:10px;font-size:.9rem;font-weight:500;color:var(--color-text-on-charcoal);z-index:2000;cursor:pointer;box-shadow:0 4px 16px #0003;animation:toast-in .25s ease-out;max-width:calc(100vw - 32px);text-align:center}.toast-error{background:var(--color-semantic-danger-text)}.toast-info{background:var(--gradient-key-dark)}.toast-success{background:#16a34a}.toast-message{line-height:1.4}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.conv-sidebar,.conv-focal-wrapper{display:none}.conv-composer-input{display:none;flex-shrink:0;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--spacing-card-padding, 14px);margin-bottom:8px}.conv-composer-input .expression-wrapper{margin-bottom:0}.conv-composer-input__dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-brand-amber);flex-shrink:0;margin-right:10px}.conv-composer-input__hint{display:inline-flex;align-items:center;padding:2px 8px;margin-left:auto;border-radius:var(--radius-sm);background:var(--color-surface-canvas-warm);color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.3px;flex-shrink:0}.conv-composer-input .expression-input{gap:0}.conv-composer-input .expression-text{flex:1;min-width:0}.conv-focus{flex:1;min-height:0;display:flex;flex-direction:column;gap:6px;overflow:hidden}.conv-controls{flex:1 1 auto;min-height:0;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:10px;display:flex;flex-direction:column;gap:6px;overflow:hidden}.conv-controls .fraction-container,.conv-controls .voice-btn{flex-shrink:0}.conv-controls .keypad{flex:1 1 auto;min-height:0}@media (min-width: 1024px){.conv-main{display:grid;grid-template-columns:280px minmax(0,1fr) 340px;grid-template-rows:1fr;gap:16px;padding:20px 24px;max-width:1280px;margin:0 auto;height:auto;max-height:none;overflow:visible}.conv-sidebar{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);min-height:0}.conv-sidebar__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.conv-sidebar__title{font-family:var(--font-sans);font-size:.7rem;font-weight:500;letter-spacing:.9px;text-transform:uppercase;color:var(--color-text-tertiary);margin:0}.conv-sidebar__tools{display:flex;gap:4px}.conv-sidebar__tool{background:transparent;border:none;padding:2px 6px;font-family:var(--font-sans);font-size:.7rem;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-xs);transition:color var(--transition-fast),background var(--transition-fast)}.conv-sidebar__tool:hover{color:var(--color-text-strong);background:var(--color-surface-canvas-warm)}.conv-sidebar__tool--danger:hover{color:var(--color-semantic-danger-text)}.conv-sidebar__empty{font-family:var(--font-sans);font-size:.85rem;color:var(--color-text-tertiary);padding:12px 4px;margin:0}.conv-sidebar__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1;min-height:0}.conv-sidebar-item{width:100%;display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--color-surface-card-top);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-mini-key);text-align:left;cursor:pointer;transition:box-shadow var(--transition-base),transform var(--transition-base)}.conv-sidebar-item:hover{box-shadow:var(--shadow-card)}.conv-sidebar-item:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.conv-sidebar-item--latest{box-shadow:inset 3px 0 0 var(--color-brand-amber),var(--shadow-mini-key)}.conv-sidebar-item__meta{font-family:var(--font-sans);font-size:.7rem;color:var(--color-text-tertiary);letter-spacing:.3px}.conv-sidebar-item__expression{font-family:var(--font-mono);font-size:.8rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-sidebar-item__result{font-family:var(--font-mono);font-size:1.1rem;font-weight:500;color:var(--color-text-primary);letter-spacing:-.3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-sidebar__all{background:transparent;border:none;padding:8px 4px;font-family:var(--font-sans);font-size:.8rem;color:var(--color-text-secondary);cursor:pointer;text-align:left;border-radius:var(--radius-sm);transition:color var(--transition-fast)}.conv-sidebar__all:hover{color:var(--color-text-primary)}.conv-history{display:none}.conv-focal-wrapper{display:flex;flex:1;min-height:0}.conv-focus{display:flex;flex-direction:column;gap:16px;min-height:0}.conv-card--focal{padding:32px 36px;border-radius:var(--radius-xl, 14px);flex:1;display:flex;flex-direction:column}.conv-card--focal .conv-card__meta{margin-bottom:18px}.conv-chip--dim-focal{font-size:.72rem;font-weight:500;letter-spacing:1px;padding:3px 10px}.conv-card--focal .conv-card__transcription{font-size:.95rem;color:var(--color-text-strong);margin-bottom:4px;display:flex;flex-direction:column;gap:2px;font-style:normal}.conv-card--focal .conv-card__transcription .conv-card__muted{display:block;font-size:.7rem;letter-spacing:.6px;text-transform:lowercase;color:var(--color-text-tertiary);margin:0 0 2px;font-weight:500}.conv-card__quoted{font-family:var(--font-sans);font-style:italic;color:var(--color-text-strong)}.conv-card--focal .conv-card__expression{font-family:var(--font-mono);font-size:1.2rem;color:var(--color-text-strong);letter-spacing:-.3px;margin-bottom:16px;display:flex;flex-direction:column;gap:2px}.conv-card--focal .conv-card__expression .conv-card__muted{display:block;font-size:.7rem;letter-spacing:.6px;text-transform:lowercase;color:var(--color-text-tertiary);margin-bottom:2px;font-weight:500;font-family:var(--font-sans)}.conv-card__result-label{display:block;font-size:.7rem;letter-spacing:.6px;text-transform:lowercase;color:var(--color-text-tertiary);margin-bottom:6px;font-weight:500;font-family:var(--font-sans)}.conv-card--focal .conv-card__result{font-family:var(--font-mono);font-weight:500;color:var(--color-text-primary);letter-spacing:-1.5px;line-height:1;margin:0 0 8px;display:flex;flex-direction:column;gap:4px}.conv-card__result-value{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.conv-card--focal .conv-card__result-value{font-size:clamp(3.5rem,7vw,5.5rem)}.conv-card__result-unit{font-size:.35em;font-weight:500;color:var(--color-text-secondary);letter-spacing:-.5px}.conv-card__equivalence{font-family:var(--font-sans);font-size:.85rem;color:var(--color-text-tertiary);margin:0 0 auto;padding-bottom:8px}.conv-card--focal .conv-card__result--dual{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:12px 20px}.conv-card--focal .conv-card__result--dual .conv-card__result-label{flex-basis:100%;margin-bottom:2px}.conv-card--focal .conv-card__result-value--metric{color:var(--color-text-secondary);font-size:clamp(2.2rem,4.5vw,3.5rem)}.conv-card__result-divider{font-size:.4em;color:var(--color-text-tertiary);align-self:center;padding:0 4px}.conv-card--focal .conv-card__actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-faint);gap:8px}.conv-card--focal .conv-action{padding:7px 14px;font-size:.8rem}.conv-focus .conv-composer-input{display:block;padding:12px 16px;margin-bottom:0}.conv-focus .conv-composer-input .expression-input{padding:10px 14px;min-height:44px}.conv-focus .conv-composer-input__hint{display:inline-flex}.conv-controls{background:var(--gradient-card);padding:16px;gap:10px}.conv-controls .fraction-container{margin-bottom:0}.conv-controls .fraction-pad{grid-template-columns:repeat(4,1fr);gap:8px}.conv-controls .frac-btn{padding:10px 4px;font-size:.95rem}.conv-controls .keypad{flex:1;gap:8px}.conv-controls .keypad-row{gap:8px}.conv-controls .key{font-size:1.4rem;padding:14px 0;border-radius:var(--radius-lg)}.conv-controls .voice-btn{padding:14px 18px;font-size:.9rem}.conv-composer-input__dot{display:inline-block}}@media (min-width: 1400px){.conv-main{grid-template-columns:300px minmax(0,1fr) 360px;max-width:1440px;gap:20px}.conv-card--focal{padding:40px 44px}}.brand-wordmark{display:none;align-items:baseline;gap:6px;font-family:var(--font-sans);letter-spacing:-.3px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.brand-wordmark__name{font-weight:500;font-size:1rem;color:var(--color-text-primary)}.brand-wordmark__product{font-weight:500;font-size:1rem;color:var(--color-brand-amber-dark)}.header-shortcut{display:none;align-items:center;gap:2px;padding:5px 8px;background:var(--color-surface-canvas-warm);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.header-shortcut:hover{background:var(--color-surface-card-bottom)}.header-shortcut kbd{font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-secondary);background:transparent;padding:0 2px}.header-avatar{display:none;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-full);background:var(--gradient-avatar);box-shadow:var(--shadow-avatar);color:var(--color-text-inverse);font-family:var(--font-sans);font-size:.75rem;font-weight:500;letter-spacing:.5px;cursor:pointer;flex-shrink:0;transition:box-shadow var(--transition-base)}.header-avatar:hover{box-shadow:var(--shadow-card),0 0 0 3px #0f14190d}.header-avatar:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}@media (min-width: 1024px){.brand-wordmark,.header-shortcut,.header-avatar{display:inline-flex}.header .sign-out-btn,.header .user-name{display:none}}.tab-navigation{display:flex;align-items:stretch;justify-content:center;position:relative;flex-shrink:0;background:var(--color-surface-card-top);border-top:1px solid var(--color-border-soft);padding-bottom:env(safe-area-inset-bottom,0)}.tab-navigation__tabs{display:flex;flex:1}.tab-btn{flex:1;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:10px 6px;min-height:60px;background:transparent;border:none;color:var(--color-text-tertiary);cursor:pointer;font-family:var(--font-sans);font-weight:500;-webkit-tap-highlight-color:transparent;transition:color .15s ease,transform 80ms ease}.tab-btn:active{transform:scale(.96)}.tab-btn.active{color:var(--color-brand-amber)}.tab-icon{display:inline-flex;align-items:center;justify-content:center;line-height:0}.tab-icon svg{width:26px;height:26px}.tab-label{font-size:.72rem;letter-spacing:.02em;line-height:1}.tab-navigation__status{display:none;align-items:center;gap:10px;padding:0 16px;font-family:var(--font-sans);font-size:.75rem;color:var(--color-text-tertiary);flex-shrink:0}.tab-navigation__version{letter-spacing:.3px}.tab-navigation__online{display:inline-flex;align-items:center;gap:5px;letter-spacing:.3px}.tab-navigation__dot{width:7px;height:7px;border-radius:var(--radius-full);background:var(--color-semantic-area-border);flex-shrink:0}.tab-navigation__online--no .tab-navigation__dot{background:var(--color-semantic-danger-border)}@media (min-width: 1024px){.tab-navigation__status{display:inline-flex}.tab-navigation__tabs{flex:0 1 auto}.tab-navigation{justify-content:space-between;padding:0 8px}.tab-btn .tab-label{display:inline}.tab-btn{padding-inline:14px}}.voice-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;background:var(--gradient-dark-screen);display:flex;flex-direction:column;padding:env(safe-area-inset-top,0) 24px env(safe-area-inset-bottom,0);color:var(--color-text-on-charcoal);font-family:var(--font-sans);animation:voice-overlay-in .16s cubic-bezier(.34,1.2,.64,1);-moz-user-select:none;user-select:none;-webkit-user-select:none;overflow:hidden}@keyframes voice-overlay-in{0%{opacity:0}to{opacity:1}}.voice-overlay__header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:18px 0 8px;min-height:48px}.voice-overlay__status{display:inline-flex;align-items:center;gap:8px;font-size:.72rem;font-weight:500;letter-spacing:1.2px;color:var(--color-text-on-charcoal)}.voice-overlay__status-dot{width:9px;height:9px;border-radius:var(--radius-full);background:var(--color-brand-amber);box-shadow:0 0 10px var(--color-brand-amber-glow);animation:voice-dot-pulse 1.2s ease-in-out infinite}.voice-overlay--processing .voice-overlay__status-dot{animation:voice-dot-spin 1s linear infinite}@keyframes voice-dot-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.6}}@keyframes voice-dot-spin{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.voice-overlay__body{flex:1;display:flex;flex-direction:column;justify-content:center;padding:0 4px;min-height:0;overflow:hidden}.voice-overlay__label{font-size:.85rem;color:#fac77599;letter-spacing:.2px;margin:0 0 20px}.voice-overlay__transcript{font-size:clamp(1.8rem,6vw,2.6rem);line-height:1.25;font-weight:500;color:#fff;letter-spacing:-.4px;margin:0;word-break:break-word}.voice-overlay__transcript--waiting{color:#ffffff59;font-weight:400;font-style:italic}.voice-overlay__waveform{flex-shrink:0;display:flex;align-items:flex-end;justify-content:center;gap:4px;height:48px;padding:8px 0 16px}.voice-overlay__bar{display:block;width:3px;height:20%;background:var(--color-brand-amber);border-radius:2px;animation:voice-bar-bounce .9s ease-in-out infinite;transform-origin:bottom;will-change:transform}.voice-overlay--processing .voice-overlay__bar{animation:voice-bar-breathe 1.4s ease-in-out infinite;opacity:.4}@keyframes voice-bar-bounce{0%,to{transform:scaleY(.3)}20%{transform:scaleY(1.8)}40%{transform:scaleY(.6)}60%{transform:scaleY(2.4)}80%{transform:scaleY(.5)}}@keyframes voice-bar-breathe{0%,to{transform:scaleY(.6)}50%{transform:scaleY(1)}}.voice-overlay__footer{flex-shrink:0;padding:8px 0 24px;display:flex;flex-direction:column;align-items:center;gap:14px}.voice-overlay__hint{font-size:.78rem;color:#ffffff73;text-align:center;margin:0;letter-spacing:.1px;line-height:1.4}.voice-overlay__cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:400px;padding:16px 20px;background:var(--gradient-voice-active);box-shadow:var(--shadow-voice-active);color:var(--color-text-primary);border:none;border-radius:var(--radius-full);font-family:var(--font-sans);font-size:.95rem;font-weight:500;letter-spacing:.2px;cursor:pointer;transition:box-shadow var(--transition-base),transform var(--transition-base)}.voice-overlay__cta:active{box-shadow:var(--shadow-key-pressed);transform:translateY(.5px)}.voice-overlay__cta:disabled{cursor:default}.voice-overlay__cta--processing{background:var(--gradient-key-dark);box-shadow:var(--shadow-key-dark);color:var(--color-text-on-charcoal)}.voice-overlay__cta-dot{width:10px;height:10px;border-radius:2px;background:var(--color-text-primary)}.voice-overlay__cta--processing .voice-overlay__cta-dot{background:var(--color-text-on-charcoal);animation:voice-dot-pulse 1.2s ease-in-out infinite}@media (min-width: 1024px){.voice-overlay{display:none}}@media (prefers-reduced-motion: reduce){.voice-overlay,.voice-overlay__status-dot,.voice-overlay__bar,.voice-overlay__cta--processing .voice-overlay__cta-dot{animation:none}.voice-overlay__bar{transform:scaleY(.6)}}.tab-info{display:none}.tab-controls{display:contents}@media (min-width: 1024px){.tab-desktop-3col{display:grid;grid-template-columns:280px minmax(0,1fr) 340px;grid-template-rows:1fr;gap:16px;padding:20px 24px;max-width:1280px;margin:0 auto;height:auto;max-height:none;overflow:visible;align-items:stretch}.tab-desktop-3col .tab-info{grid-column:1}.tab-desktop-3col .tab-main,.tab-desktop-3col .content-container{grid-column:2}.tab-desktop-3col .tab-controls{grid-column:3}.tab-desktop-3col .tab-info{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);align-self:start}.tab-info h3{font-family:var(--font-sans);font-size:.7rem;font-weight:500;letter-spacing:.9px;text-transform:uppercase;color:var(--color-text-tertiary);margin:0}.tab-info h4{font-family:var(--font-sans);font-size:.7rem;font-weight:500;letter-spacing:.7px;text-transform:uppercase;color:var(--color-text-tertiary);margin:8px 0 0}.tab-info p,.tab-info li{font-family:var(--font-sans);font-size:.85rem;color:var(--color-text-secondary);line-height:1.4;margin:0}.tab-info ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.tab-info__muted{color:var(--color-text-tertiary);font-size:.78rem}.tab-desktop-3col .content-container,.tab-desktop-3col .tab-main{background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px;display:flex;flex-direction:column;gap:12px}.tab-desktop-3col .tab-controls{display:flex;flex-direction:column;gap:8px;padding:14px;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);align-self:start}.tab-desktop-3col .tab-controls .easy-square-fractions,.tab-desktop-3col .tab-controls .easy-square-keypad{flex-shrink:0}.stairs-panel.tab-desktop-3col{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);padding:20px 24px;overflow:visible;height:auto;max-height:none}.stairs-panel.tab-desktop-3col .stairs-panel__inputs,.stairs-panel.tab-desktop-3col .stairs-panel__output,.stairs-panel.tab-desktop-3col .stairs-panel__compliance{background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:16px;align-self:start}}.visor{background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg, 12px);padding:18px 22px 16px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;font-family:var(--font-mono, "JetBrains Mono", monospace);text-align:right;color:var(--color-text-primary);min-height:132px;flex:1;overflow:hidden}.visor--empty .visor-result{color:var(--color-text-tertiary)}.visor--typing .visor-result--typing{color:var(--color-text-primary);font-size:28px;word-break:break-word}@media (min-width: 1024px){.visor--typing .visor-result--typing{font-size:36px}}.visor-label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-tertiary);text-align:left;margin-bottom:2px}.visor-expr{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:13px;color:var(--color-text-tertiary);line-height:1.3;word-break:break-word}.visor-result{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:38px;font-weight:500;color:var(--color-text-primary);line-height:1;letter-spacing:-.02em;padding-right:4px}.visor-dual{display:flex;flex-direction:column;gap:14px}.visor-dual-ulabel{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-tertiary)}.visor-primary{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.visor-primary-value{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:38px;font-weight:500;color:var(--color-text-primary);line-height:1;letter-spacing:-.02em;padding-right:4px}.visor-minicards{display:flex;gap:8px;width:100%}.visor-minicard{flex:1;min-width:0;background:var(--color-surface-inset);border:1px solid var(--color-border-faint);border-radius:var(--radius-md, 8px);padding:8px 12px 9px;display:flex;flex-direction:column;align-items:flex-end;gap:3px}.visor-minicard-label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-tertiary)}.visor-minicard-value{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:18px;font-weight:500;color:var(--color-text-secondary);line-height:1.1;letter-spacing:-.01em;padding-right:2px;word-break:break-word}.visor-hint{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:11px;color:var(--color-text-tertiary)}.visor-error .visor-result{font-size:30px;color:var(--color-text-secondary)}.visor-error-msg{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:11px;color:var(--color-text-secondary)}.visor-freeform-note{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:10px;color:var(--color-text-tertiary);font-style:italic;text-transform:lowercase;letter-spacing:.06em}.visor--freeform{border-style:dashed}@media (min-width: 1024px){.visor{padding:24px 28px 22px;min-height:168px}.visor-result,.visor-primary-value{font-size:48px}.visor-minicard-value{font-size:20px}.visor-expr{font-size:14px}}.transcript-card{background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:var(--radius-md, 8px);padding:8px 14px 9px;display:flex;flex-direction:column;gap:2px}.transcript-card__label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-tertiary)}.transcript-card__text{margin:0;font-size:14px;line-height:1.35;color:var(--color-text-secondary);font-style:italic;word-break:break-word}.tab-shell{flex:1;min-height:0;display:flex;flex-direction:column;padding:6px;gap:6px;overflow:hidden}.tab-shell__info{display:none}.tab-shell__center{flex:1;min-height:0;display:flex;flex-direction:column;gap:6px;overflow:hidden}.tab-shell__display{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.tab-shell__controls{flex:0 0 auto;min-height:0;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:8px;display:flex;flex-direction:column;gap:4px;overflow:hidden}.tab-shell__controls .fraction-container{flex-shrink:0;padding:5px;margin-bottom:5px}.tab-shell__controls .frac-btn{padding:6px 3px;font-size:.83rem}.tab-shell__controls .key{font-size:1.1rem;padding:8px 0}.tab-shell__controls .keypad{flex:1 1 auto;min-height:0;gap:5px}.tab-shell__controls .keypad-row{gap:5px}.tab-shell__controls .voice-btn{flex-shrink:0;padding:10px 15px;font-size:.88rem}.tab-shell__controls .voice-btn .voice-icon svg{width:20px;height:20px}@media (min-width: 1024px){.tab-shell{display:grid;grid-template-columns:280px minmax(0,1fr) 340px;grid-template-rows:1fr;gap:16px;padding:20px 24px;max-width:1280px;margin:0 auto;height:auto;max-height:none;overflow:visible;align-items:stretch}.tab-shell__info{grid-column:1;display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);align-self:start}.tab-shell__info h3{font-family:var(--font-sans);font-size:.7rem;font-weight:500;letter-spacing:.9px;text-transform:uppercase;color:var(--color-text-tertiary);margin:0}.tab-shell__info h4{font-family:var(--font-sans);font-size:.7rem;font-weight:500;letter-spacing:.7px;text-transform:uppercase;color:var(--color-text-tertiary);margin:8px 0 0}.tab-shell__info p,.tab-shell__info li{font-family:var(--font-sans);font-size:.85rem;color:var(--color-text-secondary);line-height:1.4;margin:0}.tab-shell__info ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.tab-shell__info-muted{color:var(--color-text-tertiary);font-size:.78rem}.tab-shell__center{grid-column:2;background:var(--gradient-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px;gap:16px;min-height:0;overflow:visible}.tab-shell__display{flex:1;min-height:280px}.tab-shell__controls{grid-column:3;align-self:start;padding:16px;gap:10px}.tab-shell__controls .fraction-container{margin-bottom:0}.tab-shell__controls .fraction-pad{grid-template-columns:repeat(4,1fr);gap:8px}.tab-shell__controls .frac-btn{padding:10px 4px;font-size:.95rem}.tab-shell__controls .keypad{gap:8px;flex:1}.tab-shell__controls .keypad-row{gap:8px}.tab-shell__controls .key{font-size:1.4rem;padding:14px 0;border-radius:var(--radius-lg)}.tab-shell__controls .voice-btn{padding:14px 18px;font-size:.9rem}.tab-shell__controls .voice-btn .voice-icon svg{width:24px;height:24px}}@media (min-width: 1400px){.tab-shell{grid-template-columns:300px minmax(0,1fr) 360px;max-width:1440px;gap:20px}}.tab-shell--big-display .tab-shell__center{flex:1 1 auto}.tab-shell--big-display .tab-shell__controls{flex:0 0 auto}@media (min-width: 1024px){.tab-shell--big-display .tab-shell__display{min-height:505px}}.triangle-display{flex:1;min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:8px;overflow:hidden;padding:0}.triangle-display .easy-square-triangle{flex:1 1 auto;min-height:0;margin:0 -6px;padding:10px;border-radius:0;border-left:none;border-right:none;width:auto;overflow:hidden;display:flex;align-items:center;justify-content:center}.triangle-stage{position:relative;aspect-ratio:240 / 200;height:100%;width:auto;max-width:100%;max-height:100%;margin:0 auto}.triangle-display .easy-square-svg{width:100%;height:100%;max-width:none;display:block}.triangle-display .easy-square-presets{padding:0 6px;flex-shrink:0;gap:6px}.triangle-display .easy-square-preset{padding:6px 12px;font-size:.8rem}.triangle-fields{padding:0 2px}@media (min-width: 1024px){.triangle-display .easy-square-triangle{margin:0;border-radius:12px;border:1px solid #E2E8F0}}.converter-display{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:8px;overflow:hidden;padding:4px}.converter-display .unit-converter-display{flex:0 0 auto;padding:0;gap:6px}.converter-display .unit-converter-value,.converter-display .unit-converter-result{padding:10px 12px;font-size:1.2rem}.converter-display .unit-converter-select{padding:8px 6px;font-size:.8rem;min-width:90px}.converter-display .unit-converter-swap{margin:2px auto;padding:4px}.converter-display .unit-converter-presets{padding:0;gap:6px;flex-shrink:0}.converter-display .unit-converter-preset{padding:6px 12px;font-size:.8rem}.stair-display{flex:1;display:flex;flex-direction:column;gap:10px;min-height:0;overflow:hidden}.stair-visor{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:12px;margin:0 -6px;border-radius:0;border-top:1px solid #E2E8F0;border-bottom:1px solid #E2E8F0;overflow:hidden;background-color:#fafcfe;background-image:linear-gradient(rgba(180,200,220,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(180,200,220,.25) 1px,transparent 1px);background-size:20px 20px;box-shadow:inset 0 1px 3px #0000000a}.stair-svg{width:100%;height:100%;max-width:480px}.stair-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 2px;flex-shrink:0}@media (min-width: 1024px){.stair-visor{margin:0;border-radius:12px;border:1px solid #E2E8F0}}.stair-input{display:flex;flex-direction:column;align-items:stretch;gap:4px;background:var(--color-surface-card-top);border:1px solid var(--color-border-soft);border-radius:8px;padding:8px 10px;cursor:pointer;transition:all .15s;text-align:left;font-family:inherit}.stair-input:hover{border-color:#a0aec0}.stair-input.active{border-color:var(--color-brand-amber);background:var(--color-semantic-warn-bg);box-shadow:0 0 0 3px #fdb9134d}.stair-input.computed{background:#f0fff4;border-color:#9ae6b4}.stair-input.computed .stair-input__value{color:#276749}.stair-input.computed.active{border-color:var(--color-brand-amber);background:var(--color-semantic-warn-bg)}.stair-input.computed.active .stair-input__value{color:var(--color-text-primary)}.stair-input__label{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.stair-input__value{font-size:1.15rem;font-weight:700;color:var(--color-text-primary);font-family:SF Mono,Cascadia Code,Consolas,monospace;min-height:1.4em}.hover\:bg-\[\#0d6d66\]:hover{--tw-bg-opacity: 1;background-color:rgb(13 109 102 / var(--tw-bg-opacity, 1))}.hover\:text-\[\#101828\]:hover{--tw-text-opacity: 1;color:rgb(16 24 40 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-transparent:focus{border-color:transparent}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-teal-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(13 148 136 / var(--tw-ring-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}:root{--color-surface-canvas: #F4F2EC;--color-surface-canvas-warm: #EFECE3;--color-surface-card-top: #FFFFFF;--color-surface-card-bottom: #FBF9F3;--color-surface-inset: #EFECE3;--color-text-primary: #0F1419;--color-text-strong: #1F2937;--color-text-secondary: #6B7280;--color-text-tertiary: #9CA3AF;--color-text-inverse: #FFFFFF;--color-text-on-charcoal: #FAC775;--color-brand-amber: #F5A623;--color-brand-amber-dark: #D4860F;--color-brand-amber-glow: rgba(245, 166, 35, .4);--color-charcoal-bottom: #1A1F2C;--color-semantic-area-bg: #E1F5EE;--color-semantic-area-text: #0F6E56;--color-semantic-area-border: #5DCAA5;--color-semantic-length-bg: #E6F1FB;--color-semantic-length-text: #0C447C;--color-semantic-count-bg: #F1EFE8;--color-semantic-count-text: #444441;--color-semantic-danger-bg: #FCEBEB;--color-semantic-danger-text: #B91C1C;--color-semantic-danger-border: #F09595;--color-semantic-warn-bg: #FAEEDA;--color-semantic-warn-text: #854F0B;--color-border-subtle: rgba(15, 20, 25, .04);--color-border-faint: rgba(15, 20, 25, .06);--color-border-soft: rgba(15, 20, 25, .08);--color-border-strong: rgba(15, 20, 25, .2);--gradient-key-rest: radial-gradient(ellipse at center top, #FFFFFF 0%, #F0EEE6 60%, #E3E0D3 100%);--gradient-key-pressed: radial-gradient(ellipse at center top, #ECEAE1 0%, #E3E0D3 100%);--gradient-key-dark: radial-gradient(ellipse at center top, #2F3744 0%, #1A1F2C 60%, #0F1419 100%);--gradient-card: radial-gradient(ellipse at center top, #FFFFFF 0%, #FBF9F3 100%);--gradient-dark-screen: radial-gradient(ellipse at top, #2E3440 0%, #242931 50%, #1A1F2C 100%);--gradient-voice-active: radial-gradient(ellipse at center top, #F8C168 0%, #F5A623 60%, #D4860F 100%);--gradient-avatar: radial-gradient(ellipse at center top, #3A4252 0%, #1A1F2C 100%);--shadow-key: inset 0 1px 0 rgba(255, 255, 255, .95), inset 0 -2px 4px rgba(15, 20, 25, .05), 0 1px 2px rgba(15, 20, 25, .04);--shadow-key-pressed: inset 0 2px 4px rgba(15, 20, 25, .08), 0 0 0 rgba(0, 0, 0, 0);--shadow-key-dark: inset 0 1px 0 rgba(255, 255, 255, .08), inset 0 -2px 4px rgba(0, 0, 0, .3), 0 1px 2px rgba(15, 20, 25, .2);--shadow-card: inset 0 1px 0 rgba(255, 255, 255, .9), 0 1px 2px rgba(15, 20, 25, .04);--shadow-inset: inset 0 2px 4px rgba(15, 20, 25, .06), inset 0 -1px 0 rgba(255, 255, 255, .5);--shadow-mini-key: inset 0 1px 0 rgba(255, 255, 255, .9), inset 0 -1px 2px rgba(15, 20, 25, .04), 0 1px 1px rgba(15, 20, 25, .03);--shadow-avatar: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 2px rgba(15, 20, 25, .1);--shadow-voice-active: inset 0 1px 0 rgba(255, 255, 255, .4), inset 0 -2px 4px rgba(0, 0, 0, .15), 0 4px 20px rgba(245, 166, 35, .4);--shadow-focus-ring: 0 0 0 3px #F5A62333;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-key: 10px;--radius-lg: 12px;--radius-xl: 14px;--radius-full: 9999px;--transition-fast: .1s ease;--transition-base: .12s cubic-bezier(.34, 1.2, .64, 1);--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--spacing-key-gap: 5px;--spacing-key-gap-mobile: 4px;--spacing-card-padding: 14px;--spacing-card-padding-lg: 18px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-sans);background:var(--color-surface-canvas);color:var(--color-text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
