:root{--bg: #fbf7f2;--card: #ffffff;--text: #2a2320;--muted: #8a8078;--border: #ede6dd;--primary: #c2410c;--primary-light: #fdebdd;--accent: #b45309;--danger: #dc2626}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}.page{max-width:560px;margin:0 auto;padding:24px 20px 64px}.center{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px}.cover{text-align:center;margin-bottom:24px}.cover .emoji{font-size:56px}.cover h1{font-size:26px;margin:8px 0 2px}.cover .occasion{color:var(--muted);font-size:16px;margin:0}.cover .date{color:var(--accent);font-size:14px;margin-top:8px}.label{display:block;font-weight:700;font-size:15px;margin:20px 0 8px}.hint{color:var(--muted);font-size:13px;margin:-4px 0 8px}input[type=text],input[type=email],textarea{width:100%;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:13px 14px;font-size:16px;color:var(--text);font-family:inherit}textarea{min-height:84px;resize:vertical}.question{font-weight:600;font-size:15px;margin-bottom:8px}.q-block{margin-bottom:16px}.photo-drop{border:1px dashed var(--primary);background:var(--primary-light);border-radius:12px;padding:20px;text-align:center;color:var(--primary);font-weight:600;cursor:pointer;display:block}.photo-preview{width:100%;border-radius:12px;display:block}.link-btn{background:none;border:none;color:var(--danger);font-size:13px;font-weight:600;cursor:pointer;padding:8px 0}.identity{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px;margin-top:20px}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.btn{width:100%;min-height:52px;border:none;border-radius:12px;background:var(--primary);color:#fff;font-size:16px;font-weight:700;cursor:pointer;margin-top:24px}.btn:disabled{opacity:.5;cursor:default}.btn.secondary{background:var(--card);color:var(--primary);border:1px solid var(--border);margin-top:12px}.error{color:var(--danger);font-size:14px;margin-top:12px}.copy-box{display:flex;gap:8px;margin-top:12px}.copy-box input{flex:1}.copy-box button{min-height:0;padding:0 16px;margin:0;width:auto}
