:root{--bg: #f7f7f5;--card: #ffffff;--text: #1a1a1a;--muted: #6b6b6b;--border: #e3e3e0;--accent: #1a1a1a;--danger: #b3261e;--success: #1e7a34;--radius: 10px}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}.app-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border);background:var(--card);flex-wrap:wrap;gap:10px}.app-header .brand{font-weight:700;font-size:1.2rem;text-decoration:none;color:var(--text)}.app-header nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.app-header nav a{color:var(--text);text-decoration:none}.app-main{max-width:640px;margin:0 auto;padding:20px 16px 60px}.page-loading,.page.error{padding:40px 16px;text-align:center;color:var(--muted)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:10px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:16px}.card.centered{max-width:380px;margin:40px auto;text-align:center}.subtitle{color:var(--muted);margin-top:-8px}.stack{display:flex;flex-direction:column;gap:14px}label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;color:var(--muted);text-align:left}label.checkbox{flex-direction:row;align-items:center;gap:8px}input,select,textarea{font-size:1rem;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-family:inherit;background:#fff;color:var(--text)}button{font-size:1rem;padding:12px 18px;border-radius:8px;border:none;background:var(--accent);color:#fff;cursor:pointer}button:disabled{opacity:.5;cursor:default}button.secondary{background:#fff;color:var(--text);border:1px solid var(--border)}.link-button{background:none;color:var(--text);text-decoration:underline;padding:0;font-size:.9rem}.button-link{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;padding:10px 16px;border-radius:8px;font-size:.95rem}.button-row{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.error{color:var(--danger);font-size:.9rem}.muted{color:var(--muted)}.card-element{padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.disclaimer{background:#fdf6e3;border:1px solid #eadfb4;border-radius:8px;padding:12px;font-size:.85rem}.pricing-preview{display:flex;flex-direction:column;gap:6px;font-size:.9rem}.pricing-preview>div{display:flex;justify-content:space-between}.pricing-preview .total{font-weight:700;border-top:1px solid var(--border);padding-top:6px}.goal-list{display:flex;flex-direction:column;gap:10px}.goal-card{display:block;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-decoration:none;color:var(--text)}.goal-card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:8px}.goal-card-progress{color:var(--muted);font-size:.9rem}.badge{font-size:.75rem;padding:3px 8px;border-radius:999px;background:#eee;color:#444;white-space:nowrap}.badge-active,.badge-on_time,.badge-completed{background:#e3f3e6;color:var(--success)}.badge-failed,.badge-forfeited,.badge-cancelled{background:#fbe9e7;color:var(--danger)}.badge-partially_refunded,.badge-late_earned,.badge-pending_payment{background:#fdf1d6;color:#8a6100}.day-list{display:flex;flex-direction:column;gap:10px}.day-row{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.day-row-main{display:flex;justify-content:space-between;align-items:center;gap:8px}.check-in-form{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}.token-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.85rem}.token-table th,.token-table td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--border)}.new-link-box{background:#eef7ee;border:1px solid #cfe8cf;border-radius:8px;padding:12px;margin-bottom:12px;word-break:break-all;font-size:.85rem}@media (max-width: 480px){.app-header{flex-direction:column;align-items:flex-start}}
