:root{color-scheme:light dark;--bg:var(--tg-theme-bg-color,#fff);--fg:var(--tg-theme-text-color,#18222d);--muted:var(--tg-theme-hint-color,#707579);--accent:var(--tg-theme-button-color,#2481cc);--card:var(--tg-theme-secondary-bg-color,#f1f1f1);font:16px system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);padding:env(safe-area-inset-top) 12px calc(72px + env(safe-area-inset-bottom));min-height:100vh}header{height:58px;display:flex;align-items:center;gap:12px;position:sticky;top:0;background:var(--bg);z-index:2}header div{flex:1}header small{display:block;color:var(--muted);font-size:12px;margin-top:3px}button,select,textarea{font:inherit;border:0;border-radius:12px;padding:12px;background:var(--card);color:var(--fg)}button{min-height:44px;font-weight:650}button.primary{background:var(--accent);color:var(--tg-theme-button-text-color,#fff)}button.danger{color:#d64b4b}.card{background:var(--card);border-radius:16px;padding:15px;margin:10px 0}.card h2{font-size:15px;margin:0 0 9px}.stat{font-size:28px;font-weight:750}.muted,.hint{color:var(--muted);font-size:13px}.row{display:flex;justify-content:space-between;gap:8px;align-items:center}.item{border-top:1px solid color-mix(in srgb,var(--muted) 20%,transparent);padding:11px 0}.item:first-child{border-top:0}.actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.actions button{padding:8px 11px;min-height:36px;font-size:13px}nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--bg);padding:8px 5px calc(8px + env(safe-area-inset-bottom));border-top:1px solid color-mix(in srgb,var(--muted) 25%,transparent)}nav button{flex:1;background:transparent;padding:8px 2px;min-height:46px;font-size:11px;color:var(--muted)}nav button.active{color:var(--accent)}dialog{border:0;border-radius:18px;color:var(--fg);background:var(--bg);width:min(94vw,480px)}dialog::backdrop{background:#0008}dialog form{display:grid;gap:12px}label{display:grid;gap:6px;font-weight:650}textarea{min-height:130px;resize:vertical}menu{display:flex;justify-content:flex-end;gap:8px;padding:0;margin:4px 0 0}.skeleton{height:110px;border-radius:16px;margin:12px 0;background:linear-gradient(90deg,var(--card),color-mix(in srgb,var(--card) 70%,var(--bg)),var(--card));background-size:200%;animation:load 1.2s infinite}@keyframes load{to{background-position:-200%}}@media (min-width:700px){body{max-width:680px;margin:auto}}