:root{--bg: #0f172a;--card: #1e293b;--ink: #f1f5f9;--muted: #94a3b8;--accent: #4f46e5;--accent-d: #4338ca;--good: #16a34a;--warn: #f59e0b;--bad: #ef4444;--line: #334155}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}.wrap{max-width:480px;margin:0 auto;padding:16px 16px 96px}h1{font-size:1.5rem;margin:12px 0 4px}.head p{margin:0 0 4px}.muted{color:var(--muted)}button{font:inherit;cursor:pointer;border:none;border-radius:12px;padding:14px 18px;background:var(--accent);color:#fff;min-height:48px}button:active{background:var(--accent-d)}input,select{font:inherit;width:100%;padding:14px;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--ink);min-height:48px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;margin:12px 0}.sub{font-size:1.05rem;margin:0 0 4px}.hint{margin:0 0 12px;font-size:.85rem}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.chip{background:var(--card);border:1px solid var(--line);color:var(--muted);padding:10px 14px;min-height:44px;border-radius:999px;font-size:.9rem}.chip-on{background:var(--accent);border-color:var(--accent);color:#fff}.streak-card{text-align:center}.streak-num{font-size:4rem;font-weight:800;line-height:1;color:var(--good)}.streak-label{margin-top:4px;font-size:.95rem}.mark-btn{width:100%;margin:16px 0 0;min-height:56px;font-size:1.05rem;font-weight:600;background:var(--accent)}.mark-on{background:var(--good)}.meta-row{display:flex;justify-content:space-around;margin-top:16px}.meta-num{font-size:1.5rem;font-weight:700}.meta-cap{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cell{background:var(--bg);border:1px solid var(--line);color:var(--muted);padding:0;min-height:44px;border-radius:10px;font-size:.85rem;display:flex;align-items:center;justify-content:center}.cell-on{background:var(--good);border-color:var(--good);color:#fff;font-weight:700}.cell-today{border-color:var(--warn);border-width:2px}.add-form{display:flex;gap:8px}.add-form input{flex:1}.add-form button{flex:0 0 auto}.upsell{display:flex;flex-direction:column;gap:12px}.upgrade-btn{display:block;text-align:center;text-decoration:none;background:var(--warn);color:#111827;font-weight:700;padding:16px;min-height:48px;border-radius:12px}.plan-line{margin:12px 0 0;font-size:.8rem}.del-btn{width:100%;background:transparent;border:1px solid var(--line);color:var(--bad)}.del-btn:active{background:#ef44441f}
