:root{--bg: var(--tg-theme-bg-color, #ffffff);--text: var(--tg-theme-text-color, #000000);--hint: var(--tg-theme-hint-color, #707579);--link: var(--tg-theme-link-color, #3390ec);--button: var(--tg-theme-button-color, #3390ec);--button-text: var(--tg-theme-button-text-color, #ffffff);--secondary-bg: var(--tg-theme-secondary-bg-color, #f4f4f5);--header-bg: var(--tg-theme-header-bg-color, var(--bg));--section-bg: var(--tg-theme-section-bg-color, var(--secondary-bg));--accent-text: var(--tg-theme-accent-text-color, var(--link));--section-header: var(--tg-theme-section-header-text-color, var(--hint));--subtitle: var(--tg-theme-subtitle-text-color, var(--hint));--destructive: var(--tg-theme-destructive-text-color, #e53935);color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: var(--tg-theme-bg-color, #1c1c1e);--text: var(--tg-theme-text-color, #ffffff);--secondary-bg: var(--tg-theme-secondary-bg-color, #2a2a2e)}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,system-ui,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{min-height:100vh;min-height:100dvh}#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}a{color:var(--link);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline}img,svg{display:block;max-width:100%}.container{width:100%;max-width:600px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:12px;flex:1}.app-header{position:sticky;top:0;z-index:10;background:var(--header-bg);padding:16px;border-bottom:1px solid color-mix(in srgb,var(--hint) 18%,transparent);text-align:center}.app-header h1{margin:0;font-size:20px;font-weight:600;color:var(--text)}.app-header p{margin:4px 0 0;color:var(--hint);font-size:13px}.app-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom,0));color:var(--hint);font-size:12px;text-align:center}.text-hint{color:var(--hint)}.text-muted{color:var(--subtitle)}.text-error{color:var(--destructive)}.row{display:flex;align-items:center;gap:8px}.row-between{display:flex;align-items:center;justify-content:space-between;gap:8px}.stack{display:flex;flex-direction:column;gap:8px}.divider{height:1px;background:color-mix(in srgb,var(--hint) 18%,transparent);margin:4px 0}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:500;background:color-mix(in srgb,var(--link) 14%,transparent);color:var(--link)}.badge--muted{background:color-mix(in srgb,var(--hint) 16%,transparent);color:var(--hint)}.button-primary{width:100%;padding:14px 20px;background:var(--button);color:var(--button-text);border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .15s ease}.button-primary:hover:not(:disabled),.button-primary:focus-visible:not(:disabled){opacity:.88}.button-primary:disabled{opacity:.5;cursor:not-allowed}.button-secondary{width:100%;padding:12px 16px;background:var(--secondary-bg);color:var(--text);border:none;border-radius:12px;font-size:15px;font-weight:500;cursor:pointer;transition:opacity .15s ease}.button-secondary:hover:not(:disabled),.button-secondary:focus-visible:not(:disabled){opacity:.8}.button-secondary:disabled{opacity:.5;cursor:not-allowed}.input,.select{width:100%;padding:10px 12px;background:var(--secondary-bg);color:var(--text);border:1px solid transparent;border-radius:10px;font-size:15px;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.input:focus,.select:focus{outline:2px solid var(--link);outline-offset:1px}.filters{display:grid;grid-template-columns:1fr 1fr;gap:8px}.spinner{display:inline-block;width:24px;height:24px;border:3px solid color-mix(in srgb,var(--hint) 35%,transparent);border-top-color:var(--link);border-radius:50%;animation:spin .8s linear infinite}.spinner--lg{width:40px;height:40px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.center{display:flex;align-items:center;justify-content:center}
