:root{--bg: #f4f5f7;--panel: #ffffff;--text: #111318;--muted: #5c6470;--accent: #ffd400;--error: #d3383f;--ok: #15803d;--border: #e1e4ea;--field-bg: #f7f8fa}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,sans-serif}.shell{max-width:480px;margin:0 auto;padding:24px 16px}header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px}.brand{font-weight:800;letter-spacing:2px;display:flex;align-items:center}.logo{height:28px;width:auto;display:block}.promo-name{color:var(--text);font-weight:600}.panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #1113180f}h2{margin-top:0;color:var(--text)}label{display:block;margin:16px 0;font-size:14px;color:var(--muted)}input,select{display:block;width:100%;margin-top:6px;padding:12px;border-radius:8px;border:1px solid var(--border);background:var(--field-bg);color:var(--text);font-size:16px}.btn{display:inline-block;width:100%;padding:12px;margin-top:8px;border:none;border-radius:8px;background:var(--accent);color:#111;font-weight:700;font-size:16px;cursor:pointer;text-align:center;text-decoration:none}.btn:disabled{opacity:.5;cursor:default}.link{display:block;background:none;border:none;color:var(--muted);margin-top:12px;cursor:pointer;text-decoration:underline;font-size:14px}.link:disabled{cursor:default;opacity:.6;text-decoration:none}.steps{padding-left:20px}.steps li{margin:12px 0}.copy-box{display:flex;align-items:center;gap:10px;width:100%;margin-top:8px;padding:12px 14px;border:1px solid var(--accent);border-radius:10px;background:var(--field-bg);cursor:pointer;text-align:left}.copy-box code{flex:1;font-size:22px;font-weight:700;letter-spacing:1px;word-break:break-all;color:var(--text)}.copy-hint{color:var(--muted);font-size:13px;white-space:nowrap}.spinner{width:40px;height:40px;margin:8px auto 20px;border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice{color:#8a6d00;font-size:14px}.error{color:var(--error);font-size:14px}.ok{color:var(--ok);font-weight:600}.hint{color:var(--muted);font-size:13px}.help{margin-top:24px;padding-top:16px;border-top:1px solid var(--border);color:var(--muted);font-size:13px}.help a{color:var(--text)}footer{margin-top:24px;color:var(--muted);font-size:12px;text-align:center}footer a{color:var(--muted)}
