*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#1a56db;--primary-hover:#1e40af;--success:#16a34a;--danger:#dc2626;--bg:#f8fafc;--card:#fff;--text:#1e293b;--muted:#64748b;--border:#e2e8f0}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif}.container{max-width:800px;margin:0 auto;padding:0 20px}.card{background:var(--card);border-radius:12px;margin-bottom:20px;padding:28px;box-shadow:0 1px 3px #0000000f}.card h2{color:var(--text);margin-bottom:16px;font-size:16px}.form-group{margin-bottom:14px}.form-group label{margin-bottom:4px;font-size:13px;font-weight:600;display:block}.form-group input,.form-group select{border:1.5px solid var(--border);border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.form-group input:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1a56db1a}.form-group .hint{color:var(--muted);margin-top:2px;font-size:11px}.btn{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:background .15s,opacity .15s}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:#15803d}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#b91c1c}.btn-outline{color:var(--primary);border:1.5px solid var(--primary);background:#fff}.btn-outline:hover{background:#eff6ff}.btn:disabled{opacity:.5;cursor:not-allowed}.code-block{color:#e2e8f0;word-break:break-all;background:#1e293b;border-radius:8px;padding:16px;font-family:SF Mono,monospace;font-size:12px;line-height:1.5;overflow-x:auto}.result-box{border-radius:8px;margin-top:12px;padding:16px;font-size:14px;display:none}.result-box.success{color:#166534;background:#dcfce7;display:block}.result-box.error{color:#991b1b;background:#fef2f2;display:block}.result-box.info{color:#1e40af;background:#eff6ff;display:block}.flex-btns{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.header{background:var(--text);color:#fff;justify-content:space-between;align-items:center;padding:16px 32px;display:flex}.header h1{font-size:18px}.header .badge{background:#ffffff26;border-radius:10px;padding:4px 10px;font-size:11px}textarea{border:1.5px solid var(--border);resize:vertical;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-family:SF Mono,monospace;font-size:12px}
