:root{--primary: #e6007e;--text: #1a1a1a;--muted: #777;--bg: #f7f7f8;--card: #ffffff;--border: #e2e2e6}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}#app{max-width:480px;margin:0 auto;min-height:100vh;background:var(--bg)}.page{padding:24px 20px 40px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px}h1{font-size:22px;margin:8px 0 4px}.subtitle{color:var(--muted);font-size:14px;margin-bottom:24px}.btn{display:block;width:100%;padding:15px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;background:var(--primary);color:#fff}.btn:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border)}.consent-item{display:flex;align-items:flex-start;gap:10px;padding:14px 0;border-bottom:1px solid var(--border)}.consent-item label{font-size:15px;line-height:1.4}.tag-required{color:var(--primary);font-weight:700;font-size:13px}.tag-optional{color:var(--muted);font-size:13px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#fff;border-radius:14px;padding:28px 24px;text-align:center;width:100%;max-width:360px}.modal h2{font-size:19px;margin:12px 0 8px}.modal p{color:var(--muted);font-size:14px;margin-bottom:20px}.notice{font-size:12px;color:var(--muted);margin-top:16px;line-height:1.5}.stub-badge{display:inline-block;background:#fff3cd;color:#856404;font-size:12px;padding:4px 8px;border-radius:6px;margin-bottom:16px}
