:root{--bg: #f2f4f7;--card: #ffffff;--ink: #111827;--ink-2: #374151;--muted: #4b5563;--line: #d1d5db;--soft: #e5e7eb;--accent: #c2410c;--accent-soft: #ffedd5;--blue: #1d4ed8;--radius: 14px;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;background:var(--bg)}h1,h2{margin:0}h1{font-family:Space Grotesk,sans-serif;font-size:30px;line-height:1.1}h2{font-size:17px}p{margin:0}.screen{max-width:480px;margin:0 auto;padding:24px 16px 48px;display:flex;flex-direction:column;gap:18px}.brand{font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:700;color:var(--accent)}.eyebrow{font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.lead{font-size:15px;color:var(--ink-2)}.muted{color:var(--muted);font-size:14px}.small{font-size:13px}.hint,.note{font-size:13px;color:var(--muted)}.note{background:var(--soft);color:#1f2937;border-radius:var(--radius);padding:14px 16px;font-size:14px;line-height:1.4}.error{color:#b91c1c;font-size:14px;font-weight:600}.row{display:flex;align-items:center}.row.between{justify-content:space-between}.row.gap{gap:8px}.row.start{align-items:flex-start}.grow{flex:1}.stack{display:flex;flex-direction:column;gap:12px}.stack.tight{gap:2px;min-width:0}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.card{background:var(--card);border-radius:16px;padding:16px}.card.dark{background:var(--ink);color:#fff;border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:6px}.on-dark-muted{color:#d1d5db;font-size:14px}.big-number{font-family:Space Grotesk,sans-serif;font-size:56px;font-weight:700;line-height:1}.link-card{display:flex;flex-direction:column;gap:4px;color:inherit;text-decoration:none}.link-card:hover{outline:2px solid var(--line)}.goal-title{font-size:16px;font-weight:600}.invite-url{border:2px dashed #9ca3af;border-radius:12px;padding:12px;font-size:14px;font-weight:600;color:var(--ink-2);word-break:break-all}.qr-box{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.qr{display:block;border-radius:12px;border:1px solid var(--soft);background:#fff}.qr.placeholder{background:var(--soft)}.alert{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:12px;background:var(--accent-soft);font-size:14px}.status{font-size:14px;font-weight:600;color:var(--ink-2)}.status.ok{color:var(--blue)}.avatar{flex-shrink:0;border-radius:50%;color:#fff;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.field{display:flex;flex-direction:column;gap:6px}label{font-size:14px;font-weight:600}input,textarea{font:inherit;font-size:16px;color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:12px;padding:12px;width:100%;min-height:48px}textarea{resize:vertical}input:focus,textarea:focus{outline:none;border-color:var(--ink)}.btn{font:inherit;font-size:16px;font-weight:700;min-height:50px;padding:0 18px;border-radius:var(--radius);border:2px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn:disabled{opacity:.6;cursor:default}.btn.primary{background:var(--accent);color:#fff}.btn.blue{background:var(--blue);color:#fff}.btn.dark{background:var(--ink);color:#fff}.btn.outline{background:#fff;border-color:var(--ink);color:var(--ink)}.btn.delete{background:#b91c1c;color:#fff}.btn.outline-danger{background:#fff;border-color:#b91c1c;color:#b91c1c}.card.danger{border:2px solid #fecaca}.btn.ghost{background:transparent;color:var(--ink-2)}.link{font:inherit;font-size:14px;background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer}.link.center{align-self:center;min-height:44px}.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;background:var(--soft);border-radius:var(--radius)}.tab{font:inherit;font-size:15px;font-weight:600;min-height:44px;border:0;border-radius:10px;background:transparent;color:var(--ink-2);cursor:pointer}.tab.on{background:#fff;color:var(--ink);box-shadow:0 1px 2px #00000014}.back{width:44px;height:44px;border-radius:50%;background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
