*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}:root{--bg:var(--tg-theme-bg-color,#fff);--bg2:var(--tg-theme-secondary-bg-color,#f1f1f1);--text:var(--tg-theme-text-color,#000);--hint:var(--tg-theme-hint-color,#999);--link:var(--tg-theme-link-color,#2481cc);--btn:var(--tg-theme-button-color,#2481cc);--btn-text:var(--tg-theme-button-text-color,#fff);--radius:12px;--gap:12px}body{background:var(--bg);color:var(--text);overscroll-behavior:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.4}button{cursor:pointer;border:none;outline:none;font-family:inherit}.screen{min-height:100dvh;padding:16px 16px 88px}.btn{background:var(--btn);width:100%;color:var(--btn-text);border-radius:var(--radius);text-align:center;border:none;padding:14px;font-size:16px;font-weight:600;display:block}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg2);color:var(--text)}.card{background:var(--bg2);border-radius:var(--radius);margin-bottom:var(--gap);padding:14px}.section-title{color:var(--hint);text-transform:uppercase;letter-spacing:.05em;margin-top:20px;margin-bottom:8px;font-size:13px;font-weight:600}.tab-bar{background:var(--bg);border-top:1px solid var(--bg2);padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:100;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{color:var(--hint);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;padding:4px;font-size:10px;display:flex}.tab.active{color:var(--btn)}.pill-selector{margin-bottom:var(--gap);flex-wrap:wrap;gap:8px;display:flex}.pill{background:var(--bg2);color:var(--text);cursor:pointer;border:2px solid #0000;border-radius:20px;padding:8px 18px;font-size:15px;font-weight:500}.pill.selected{border-color:var(--btn);color:var(--btn);background:var(--bg)}.progress-bar-wrap{background:var(--bg2);border-radius:4px;height:6px;overflow:hidden}.progress-bar-fill{background:var(--btn);border-radius:4px;height:100%;transition:width .3s}.empty-state{text-align:center;color:var(--hint);padding:48px 16px}.badge{background:var(--bg2);color:var(--hint);border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge.public{color:var(--btn);background:#2481cc1f}
